Lucene의 목적은 소프트웨어 개발자에게 대상 시스템에서 전체 텍스트 검색 기능을 쉽게 구현하거나 완전한 전체 텍스트 검색 엔진을 구축할 수 있는 간단하고 사용하기 쉬운 툴킷을 제공하는 것입니다. 그것에 기초하여.
전체 텍스트 검색 엔진인 Lucene은 다음과 같은 뛰어난 장점을 가지고 있습니다.
(1) 인덱스 파일 형식은 애플리케이션 플랫폼에 독립적입니다. Lucene은 8비트 바이트 기반 인덱스 파일 형식 세트를 정의하여 서로 다른 플랫폼의 호환 시스템 또는 응용 프로그램이 생성된 인덱스 파일을 공유할 수 있도록 합니다.
(2) 기존 전체 텍스트 검색 엔진의 역색인을 기반으로 블록 인덱싱을 구현하여 새 파일에 대한 작은 파일 인덱스를 설정하고 인덱싱 속도를 향상시킬 수 있습니다. 그런 다음 원본 인덱스와의 병합을 통해 최적화 목적이 달성됩니다.
(3) 뛰어난 객체 지향 시스템 아키텍처를 통해 Lucene 확장을 더 쉽게 배울 수 있고 새로운 기능의 확장이 용이합니다.
(4) 텍스트 분석 인터페이스는 언어 및 파일 형식에 독립적으로 설계되었습니다. 인덱서는 토큰 스트림을 수용하여 인덱스 파일 생성을 완료합니다. 사용자는 새로운 언어를 확장하기 위해 텍스트 분석만 구현하면 됩니다. 및 파일 형식.
(5) 강력한 쿼리 엔진 세트가 기본적으로 구현되었습니다. Lucene의 쿼리 구현이 부울 연산 및 퍼지 쿼리를 구현하더라도 시스템이 강력한 쿼리 기능을 얻을 수 있더라도 사용자는 자신의 코드를 작성할 필요가 없습니다. 기본적으로 검색), 그룹 쿼리 등이 있습니다.
기존의 상용 전문 검색 엔진에 비해 Lucene은 상당한 이점을 갖고 있습니다.
우선 개발 소스코드 배포 방식(아파치 소프트웨어 라이선스 준수)을 바탕으로 프로그래머는 루씬이 제공하는 강력한 기능을 최대한 활용할 수 있을 뿐만 아니라, 심도 있고 상세한 텍스트 검색 엔진 제작 기술과 객체 지향 프로그래밍의 실천을 바탕으로 응용 프로그램의 실제 상황에 따라 현재 응용 프로그램에 더 적합한 더 나은 전체 텍스트 검색 엔진을 작성합니다. 이 시점에서 상용 소프트웨어는 Lucene보다 유연성이 훨씬 떨어집니다.
둘째, Lucene은 오픈소스 코드의 일관되고 우수한 아키텍처의 장점을 계승하여 합리적이고 확장성이 뛰어난 객체지향 아키텍처를 설계합니다. 프로그래머는 Lucene을 기반으로 중국어 처리 기능 확장, 텍스트 확장부터 HTML, PDF 등과 같은 텍스트 형식 처리까지 이러한 확장 기능을 작성하는 것은 복잡하지 않을 뿐만 아니라 Lucene이 시스템 장비를 프로그래밍 방식으로 적절하고 합리적으로 추상화하기 때문에 확장 기능도 크로스 플랫폼 기능을 쉽게 달성할 수 있습니다. .
마지막으로, 아파치 소프트웨어 재단으로 이전한 후, 아파치 소프트웨어 재단의 네트워크 플랫폼의 도움으로 프로그래머들은 개발자 및 다른 프로그래머들과 쉽게 소통하고, 자원 공유를 촉진할 수 있으며, 심지어는 완전히 작성된 확장. 마지막으로 Lucene은 Java 언어로 작성되었지만 오픈 소스 커뮤니티의 프로그래머들은 Lucene 인덱스 파일 형식을 준수하는 것을 기반으로 다양한 기존 언어(예: .net 프레임워크)를 사용하여 이를 구현하기 위해 끊임없이 노력하고 있습니다. run on 다양한 플랫폼에서 시스템 관리자는 현재 플랫폼에 적합한 언어를 기반으로 합리적인 선택을 할 수 있습니다.