2011-10-03 5 views
2

문제점 : category = 999 인 문서에 2x 부스트를 추가하십시오. SOLR의 vesion는 3.2특정 카테고리/태그가있는 SOLR/LUCENE 문서를 부스트 - 'IF'기능을 시뮬레이션하십시오.

사용하려고 :

  • BQ 성분 bq=category_id:999^2

->이 증대 (곱셈 생략) 첨가제를 발생으로는 허용되지

  • 부스트 (태양 흑점 3.x에서 곱하기)는 다음과 같이 subquery or a term component과 같습니다. boost=sum({!term f=category_id}999,1)

-> 용어 쿼리는 1 반환 또는 0,하지만 루씬의 점수는 정상화해야하지 않습니다

  • 기능은

IF -> 아직 SOLR 3.2에서 사용할 수 없습니다 다음 릴리즈에서 : https://issues.apache.org/jira/browse/SOLR-2136

답변

1

첨가제 부스트를 시도했지만 실패 했습니까? 내 경험에 의하면 그 방법은 대부분의 경우에 잘 작동합니다.

당신이, 당신이 match(x){0,1}에서와 sum_t match(t) * boost(t)로 득점 공식을 단순화 할 수 있습니다하려면

다음 쿼리 foo (+foo +category:9999)foo의 점수에 비해 두 배. 실제 득점 공식에는 정규화 조건 등이 포함되어있어 정확하게 두배로 늘릴 수는 없지만 실제로 동기 부여를 받으면 수고를 덜 수 있습니다. 수식은 here입니다.

당신은 물론 자신의 Weight 클래스를 작성할 수 있습니다.

관련 문제