2012-11-29 5 views
1

나는 다음을 수행/구성 (SolrJ를 통해) 제대로 SOLR를 조회하기 위해 노력하고있어 :강조 SOLR 필드

  • 하여 제공 최고 히트 조각이
  • 강조 필드에 검색어를

올바르게 작동하는 미리보기가 있지만 Solr이 필드의 검색어를 강조 표시하는 방법을 알아낼 수 없습니다. Solr highlighting은 전체 필드를 스 니펫에 반환하고 (중복을 방지하기 위해) 필드를 반환하지 않는 것이 좋습니다.하지만 작동중인 스 니펫을 잃어 버릴 수 있습니다.

Solr이 스 니펫 (강조 표시)을 제공하고 전체 필드 텍스트에서 검색어를 강조 표시 할 수있는 방법이 있습니까?

답변

1

Highlighting Parameters에 대한 다양한 설정을 기반으로 한 강조 표시 조각 크기는 한 번만 지정할 수 있고 필드 기준이 아닌 한 번만 지정할 수 있기 때문에 단일 Solr 쿼리에서이 작업을 수행 할 수 있다고 생각하지 않습니다. 당신은 SOLR에 두 개의 쿼리를 실행할 필요가있을 것이다 : 전체 필드 텍스트 &hl.fragsize=0&hl.maxAnalyzedChars=<some very large number>에 지정된 강조 옵션 :

  1. 검색어 1 : 미리 &hl.fragsize=<small number>
  2. 쿼리 2에 지정된 강조 옵션을.

하이라이트 된 스 니펫과 강조 표시된 동일한 필드의 전체 텍스트가 필요한 용도는 무엇입니까? 이것은 사용자 상호 작용을 기반으로 두 개의 개별 호출로 나눌 수 있습니까? 스 니펫을 사용하여 검색 결과를 표시 한 다음 사용자가 결과를 클릭 한 후 전체 텍스트를 볼 수 있도록 허용 할 것 같습니까?

+0

예 - 그게 발췌 문장을 보여준 다음 전체 결과를 보여줍니다. 두 가지 별도의 쿼리가 갈 길이 란 것 ... – condit