2013-05-17 3 views
0

알파벳으로 내 lucene 결과를 모두 처리하기 위해 A B C D E ...와 색인보기를하고 싶습니다.Lucene A-Z 목록

내가 주변에 인터넷 검색을 한 나는 아무것도 발견하지 않았습니다 ..

나는 작동하지 않았다 보보면 라이브러리하지만 ID로했습니다. 다음과 같은 배열을 얻고 싶습니다.

Results{ 
    prefix A: 1 results 
    prefix B: 2 results 
    prefix C: 3 results 
    prefix D: 0 results 
.... 
} 

이렇게하면 접두어에 대한 결과가있는 경우 버튼을 사용하거나 사용하지 않도록 설정할 수 있습니다.

아이디어가 있으십니까?

감사합니다.


답장 보내 주셔서 감사합니다.

현재 핵심 시스템으로 최대 절전 모드 검색을 사용하고 있습니다. 게다가, 패싯을 얻으려면 BOBO 라이브러리 (http://code.google.com/p/bobo-browse)를 사용합니다. 그래서, 전에 말했듯이, 나는 제목의 첫 단어로 새로운 필드를 만드는 것에 대해 생각하고 있습니다. 그렇게하면 BOBO로 패싯을 얻을 수 있습니다.

현재 SOLR을 설치하지는 않습니다.

은 내가, 내 말은,는 A wilcard 쿼리에면하는 코드, 그리고 직접 필드에,하지만 난 아무것도 찾을 수 없습니다 색인이 새 필드를 피하기 위해 몇 가지 코드를 찾을 수 있다고 생각 :)

하이버네이터.

답변

1

평범한 Lucene 대신 Solr (또는 ElasticSearch)을 사용 해본 적이 있습니까? 그렇다면 단어의 첫 번째 문자를 색인 된 객체의 별도 필드로 저장 한 다음 firstLetter 필드로 패싯 검색을 수행하면됩니다. Solr (및 ElasticSearch)은 즉시 상자에서 빠져 나옵니다.

+0

Solr은 확실히 좋은 옵션입니다. – Logan

+0

답변 해 주셔서 감사합니다. 현재 핵심 시스템으로 최대 절전 모드 검색을 사용하고 있습니다. 또한,면을 얻으려면 BOBO 라이브러리 (http://code.google.com/p/bobo-browse)를 사용합니다. 그래서, 전에 말했듯이, 나는 제목의 첫 단어로 새로운 필드를 만드는 것에 대해 생각하고 있습니다. 그렇게하면 BOBO로 패싯을 얻을 수 있습니다. 현재 SOLR 설치에 대해서는 생각하지 않습니다. 나는이 새로운 필드를 인덱싱하는 것을 피할 수있는 코드를 찾을 수 있다고 생각했다. wilcard 쿼리에서 패싯을 만들고 필드에 직접 코드를 삽입하는 대신 코드를 찾을 수 있다고 생각했지만 아무 것도 찾지 못했습니다. Hibernator. – Hibernator