【问题标题】:Solr how to boost results by giving weightage to few fieldsSolr 如何通过赋予少数字段权重来提高结果
【发布时间】:2015-01-22 03:20:29
【问题描述】:

对于每个文档,我在 solr 中的字段很少,例如 fieldPercentage1=13、fieldPercentage2=34 等。这些字段的范围是从 0 到 100。它们是百分比。所以,我的问题是如何使用这些字段在 solr 中提升我的查询结果。

基本上如果有 2 个文档,第一个文档的 fieldPercentage1=13,fieldPercentage2=23,第二个文档的 fieldPercentage1=20,fieldPercentage2=25。在我的搜索结果中,我希望第二个文档的排名高于第一个文档,因为这些字段的值更多。这些字段的目的只是为了提升文档,从而帮助它们浮出水面

【问题讨论】:

    标签: solr solr4


    【解决方案1】:

    其中一个选项是:

    q={!boost b=sum(fieldPercentage1, fieldPercentage2)}text:mysearchhterm
    

    更多信息在这里:https://wiki.apache.org/solr/SolrRelevancyFAQ,功能在这里:https://wiki.apache.org/solr/FunctionQuery

    另外,如果你使用 dismax/edismas,那么你可以使用 bf/boost parameters

    【讨论】:

    • 我们可以对这两个字段进行排序吗?使用 sort 和使用 boost 的结果会有多大不同?
    • 是的,你可以:sort=sum(fieldPercentage1, fieldPercentage2)+desc
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多