2011-09-17 6 views
0

Lucene을 사용하면 용어를 반복하지 않고도 곧바로 용어 검색을 할 수 있습니까? 예를 들어Lucene 용어 검색

: 한마디로

IndexReader r = IndexReader.open("..."); 
Term t = r.getTerm("myterm"); 

답변

0

기본 lucene 튜토리얼 such as this을 먼저 읽어야합니다. 튜토리얼에서 사용 된 코드는 오래된 것입니다. 즉 최신 lucene 버전과 일치하지 않습니다. 마이크에 대한 귀하의 의견에서 나는 "검색"을 찾고 있다고 생각합니다.

대안은 간단한 인터페이스를 제공하는 Elasticsearch와 같은 lucene에 대한 래퍼를 사용하는 것입니다. 그럼에도 인터페이스를 사용하기 전에 인터페이스를 이해하는 것이 중요합니다.

0

, 아니. 이미 그 용어를 가지고 있기 때문에 당신이 보여준 것처럼 인덱스에서 용어를 찾아 보는 것은 의미가 없으며 그것에 대해 어떠한 추가 정보도 요구하지 않습니다.

Lucene은 용어를 docids와 관련된 필드의 값으로 저장합니다. 하지만 TermsEnum을 사용하여 색인의 모든 용어를 열거 할 수 있습니다. 문서와 관련된 모든 용어를 찾거나 주어진 용어가 색인에 존재하는지 여부를 알아낼 수 있습니다. 이는 내가 묻고있는 것과 가장 가까운 것으로 생각할 수 있습니다.

+0

용어를 사용하여 용어와 관련된 모든 문서를 가져오고 싶습니다. 그래서 여러분은 기본적으로 모든 조건을 반복하는 값 비싼 연산 없이는 이것을 할 방법이 없다고 말하고 있습니까? – user623879

+0

죄송 합니다만 귀하의 질문에서 명확하지 않았습니다. 당신은 절대적으로 그렇게 할 수 있습니다. 도움이 될만한 게시물 phaedrus에서 "lucene in 5 minutes"링크를 발견 할 것입니다. –