Lucene과 Solr이 서로 다른 두 가지 Apache 프로젝트 인 것을 알고 있지만 각 프로젝트의 목적이 무엇인지 이해하지 못합니다.
내가 지금까지 이해 한 것은 Lucene이 검색 색인을 작성하는 데 사용되고 Solr이이 색인을 사용하여 검색을 수행한다는 것입니다. 내가 맞습니까? 아니면 완전히 다른 접근법입니까?
Lucene과 Solr이 서로 다른 두 가지 Apache 프로젝트 인 것을 알고 있지만 각 프로젝트의 목적이 무엇인지 이해하지 못합니다.
내가 지금까지 이해 한 것은 Lucene이 검색 색인을 작성하는 데 사용되고 Solr이이 색인을 사용하여 검색을 수행한다는 것입니다. 내가 맞습니까? 아니면 완전히 다른 접근법입니까?
답변:
@ darkheir : Lucene과 Solr은 서로 다른 두 가지 Apache 프로젝트로 함께 작동하므로 각 프로젝트의 목표가 무엇인지 이해하지 못합니다.
1) Solr는 후드 아래에서 Lucene을 사용합니다. Lucene은 Solr API에 대한 실마리가 없습니다.
2) Lucene은 응용 프로그램에 검색 기능을 추가 할 수있는 강력한 검색 엔진 프레임 워크입니다. 모든 검색 관련 복잡한 작업을 숨기면서 사용하기 쉬운 API를 제공합니다. Solr뿐만 아니라 모든 응용 프로그램에서이 라이브러리를 사용할 수 있습니다.
3) Solr은 Lucene 주위에 내장되어 있습니다. 그것은 Lucene 주변의 http-wrapper 일뿐 만 아니라 Lucene 에 더 많은 무기를 추가하는 것으로 알려져 있습니다 . Solr는 즉시 사용 가능한 상태입니다. Lucene이 제공하는 것 외에도 관련 인프라와 더 많은 기능을 제공하는 웹 응용 프로그램입니다.
@darkheir : Lucene은 검색 색인을 작성하는 데 사용되고 Solr은이 색인을 사용하여 검색을 수행합니다. 내가 맞습니까? 아니면 완전히 다른 접근법입니까?
4) Lucene은 Solr의 소비에 대한 지수를 만들지 않습니다 . Lucene은 모든 검색 관련 작업을 처리합니다. 모든 응용 프로그램은 Lucene 프레임 워크를 사용할 수 있습니다.
Solr, Elastic Search, LinkedIn (예, 후드 아래) 등이 그 예입니다.
이 기사를 확인하십시오 : Lucene vs Solr
업데이트 (6/18/14)
Lucene을 언제 사용해야합니까?
Solr를 언제 사용해야합니까?
참고 : Solr을 사용자 정의하기 어렵다는 의미는 아닙니다. Solr은 매우 유연하고 플러그 가능한 많은 API 포인트를 제공하므로 코드를 입력 할 수 있습니다.
' Lucene을 사용해야합니다 '캠프에 빠진 사람들이 있지만 여전히 사용하기 쉬우므로 Solr를 일반 Lucene보다 선호합니다. 그러나 Solr 사용자 정의를 최대한으로 제한하지는 않습니다.
BTW, Solene (4.x)에 Lucene (4.x)보다 더 많은 리소스가 있음을 알았습니다.
Solr과 Lucene의 관계를 개념화하는 간단한 방법은 자동차와 엔진의 관계입니다. 엔진은 운전할 수 없지만 자동차는 운전할 수 있습니다. 마찬가지로 Lucene은 그대로 사용할 수없는 프로그래밍 방식 라이브러리이며 Solr은 기본적으로 사용할 수있는 완전한 응용 프로그램입니다.
Solr은 검색 플랫폼을 제공하기 위해 lucene 위에 구축되었습니다.
아래에서 위로 다음 레이어의 검색 플랫폼 :
참조 기사 : 기업 검색
Apache Lucene은 Apache Solr에서 내부적으로 사용하는 라이브러리입니다. Java로 작성되었으며 놀라운 전체 텍스트 검색 및 색인 기능을 제공합니다. 전 세계의 많은 언어를 분석하고 효율적이고 빠른 검색 및 분석을 위해 해당 언어로 텍스트를 준비 할 수 있습니다. Lucene은 라이브러리입니다. 응용 프로그램에서 직접 사용하여 모든 것을 직접 구현할 수 있지만 Apache Solr는 즉시 사용할 수있는 많은 기능을 제공합니다.
Apache Solr 검색 엔진은 데이터를 전송하고 나중에 해당 데이터를 검색하는 데 사용할 수있는 HTTP API와 같은 기능을 제공합니다. API를 사용하여 검색 엔진을 제어하고 분산 환경을 생성하며 여러 노드에 데이터를 자동으로 분산시킬 수 있습니다.
여기에서 lucence와 solar의 목적에 대한 좋은 비교를 찾을 수 있습니다.
http://www.lucenetutorial.com/lucene-vs-solr.html
TLDR : Lucence는 엔진에 불과하고 Solar는 운전할 수있는 자동차입니다 (휴식 용 API 포함).