관계형 DB에서 Lucene 지수를 구축하기위한 모범 사례 세트가 있습니까?

StackOverflow https://stackoverflow.com/questions/296365

  •  08-07-2019
  •  | 
  •  

문제

나는 사용을 찾고있다 루센 및/또는 솔러 RDBMS 기반 웹 응용 프로그램에서 검색을 제공합니다. 불행히도, 내가 훑어 보는 모든 문서는 인덱스에서 데이터를 얻는 방법을 처리합니다. 유용한 색인을 구축하는 방법에 더 관심이 있습니다. 이 작업을 수행하기위한 "모범 사례"가 있습니까?

도움이 되었습니까?

해결책

우리는 오늘 밤 Solr을 사용하는 첫 번째 응용 프로그램을 출시하고 있습니다. Solr 1.3을 사용하면 데이터베이스 테이블 (엔티티라고 함)을 지정할 수있는 DataImporthandler가 포함되어 있습니다. 일단 정의되면 간단한 HTTP 요청은 데이터 가져 오기를 시작합니다.

보세요 DataImporthandler의 Solr Wiki 페이지 자세한 내용은.

다른 팁

여러 애플리케이션이 데이터베이스에 편지 될까요? 그렇다면 약간 까다 롭습니다. 루센 인덱서에 공급할 새로운 레코드를 식별하는 메커니즘이 있어야합니다.

고려해야 할 또 다른 요점은 모든 테이블을 다루는 하나의 인덱스 또는 테이블 당 하나의 인덱스를 원하십니까? 일반적으로 레코드의 어떤 테이블을 나타 내기 위해 해당 색인의 필드가있는 하나의 색인을 권장합니다.

최대 절전 모드 구조화되지 않은 문서 대신 지속적인 객체를 검색하려는 경우 전체 텍스트 검색을 지원합니다.

OpenSymphony 프로젝트가 있습니다 나침반 당신은 알고 있어야합니다. 나는 주로 그 일로부터 멀리 떨어져 있었다. 방법 검색보다 더 복잡합니다. 또한 문서에서 알 수 있듯이 (모든 것을 읽는 데 필요한 시간을 찾지 못했다고 고백합니다), Lucene 세그먼트를 데이터베이스의 블로브로 저장합니다. Lucene 아키텍처에 익숙하다면 Compass는 데이터베이스 위에 Lucene 디렉토리를 구현합니다. 나는 이것이 잘못된 접근법이라고 생각합니다. 데이터베이스의 인덱싱 지원을 활용하고 대신 Lucene Indexreader를 구현합니다. 분산 캐시 구현 등에 동일한 비판이 적용됩니다.

나는 이것을 전혀 탐구하지 않았지만 lusql.

Solr을 사용하면 간단하지만 일부가있을 것입니다. 마른SOLR Schema.xml 및 실제 데이터베이스 스키마를 사용한 -Violations. (FYI, Solr은 와일드 카드를 지원합니다.)

소개 :

Brian McCallister는 멋진 블로그 게시물을 썼습니다. OJB와 함께 Lucene 사용.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top