Несколько форсированных запросов в Solr

Мне нужно иметь несколько БК для запроса. Вот конфигурация для обработчика запросов.

<requestHandler name="/search" class="solr.StandardRequestHandler">
<lst name="defaults">
    <str name="indent">false</str>
    <str name="q">
    _query_:"{!edismax qf=$qfQuery mm=$mmQuery pf=$pfQuery bq=$boostQuery bq=$bQuery v=$mainQuery}"
    </str>
    <str name="qfQuery">Title^10.0 Detail CategoryTrail^4.0</str>
    <str name="mmQuery">1</str>
    <str name="pfQuery">Title Detail</str>
    <str name="boostQuery">
    _query_:"{!edismax qf=$boostQueryQf mm=100% v=$mainQuery}"^100</str>
    <str name="boostQueryQf">Title Detail</str>
    <str name="bQuery">_query_:"{!edismax qf=$bQueryQf v=$mainQuery}"</str>
    <str name="bQueryQf">CatTrail:Laptops/*^50.0 recip(ms(NOW,DateAdded),3.16e-11,1,1)^4.0 Availability:True^4.0 !ReviewCount:0^2.0</str>
</lst>
</requestHandler>

К сожалению, никто из БК не влияет на результаты. Я не вижу ни одного boost_queries в выводе debugQuery.

Я также попытался положить пустой БК в обоих boostQuery а также bQuery как предложено в сети. Но это тоже не сработало. Кто-нибудь может исправить этот обработчик или предоставить мне альтернативу для желаемого результата?
Заранее спасибо.

1 ответ

Решение

Переработал обработчик с нуля. Вот как я добился желаемых результатов:

<requestHandler name="/search" class="solr.SearchHandler">
<lst name="defaults">
    <str name="indent">false</str>      
    <str name="echoParams">explicit</str>
    <str name="defType">edismax</str>
    <str name="qf">
        Title^10.0 Detail CategoryTrail^4.0 
    </str>
    <str name="mm">1</str>
    <str name="pf">Title^8.0 Detail</str>
    <str name="bq">_val_:"{!edismax qf=$boostQueryQf mm=100% v=$q bq=}"^100</str>
    <str name="boostQueryQf">Title^10.0 Detail</str>
    <str name="bq">CatTrail:Laptops/*^50.0</str>
    <str name="bq">ReviewCount:[1 TO *]^4.0</str>
    <str name="bf">recip(ms(NOW,DateAdded),3.16e-11,1,1)^4.0</str>
    <int name="rows">10</int>
    <str name="df">allText</str>
</lst>
</requestHandler>

Я не думаю, что я был слишком конкретен в своих требованиях. Это общие требования для поиска в электронной коммерции, когда они хотят повысить записи с точными поисковыми ключевыми словами, несколькими конкретными категориями, продуктами с отзывами и новыми результатами. Я бы порекомендовал вышеупомянутый подход, которого я достиг с помощью многих исследований и Hit & испытаний.

Другие вопросы по тегам