2013-10-21 1 views
0

저는 음악 작품을수록 한 데이터베이스를 가지고 있으며, 제목의 예는 "나는 영혼을 봅니다"라고 할 수 있습니다.Solr의 LengthFilterFactory에 대한 유용한 유즈 케이스는 무엇입니까?

지금 당장 필자는 LengthFilterFactory로 구성된 필드를 사용하여 음악 작품을 색인화하여 2 자 미만 및 255 자 이상의 단어를 필터링합니다. 이것은 물론 "I See A Soul"에서 "I"와 "A"를 걸러 내기 때문에 색인이 생성 된 문서는 "See Soul"이라는 제목을 유지하게됩니다. 결과적으로 사용자가 "I See A Soul"을 검색 할 수 없기 때문에 원하는 결과를 얻을 수 없습니다. 그래서 LengthFilterFactory를 제거합니다.

그러나 궁금한 점은 어떤 상황에서 특정 길이의 단어를 제거하는 것이 좋을까요?

+0

CommonGramsFilterFactory - http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#solr.CommonGramsFilterFactory를 살펴 보시기 바랍니다. – arun

답변

1

요점은 동일한 필터를 쿼리에도 적용 할 수 있다는 것입니다. 사용자가 "나는 영혼을 봅니다"또는 "영혼을 봅니다"또는 "영혼을 봅니다"라고 말하면 여전히 동일한 결과를 찾습니다.

또 다른 아이디어는 사용자가 3 자 이상 (예 : 자동 완성 기능)을 입력 할 때까지 사용자가 검색 할 수 없도록하는 요구 사항이있는 경우 3 자 미만의 단어를 색인하지 않을 수 있다는 것입니다 그들은 어쨌든 수색되지 않을 것입니다.

관련 문제