我正在从SOLR 4.10.2迁移到SOLR 7.1。
一切似乎进展顺利,除了一件事:得到的文件回来的分数得分不同。
核心使用架构。 这是我正在搜索的字段的架构信息:
<field name="IDX_Company" type="text_general" indexed="true" stored="false" multiValued="true" />
<field name="Company" type="string" indexed="true" stored="true"/>
<copyField source="Company" dest="IDX_Company"/>
搜索maxrows = 750时,字段:*,得分
IDX_Company :(猫和划痕)
SOLR 7.1:最高得分6.95,最低得分6.28
SOLR 4.10.2:最高分8.63和最小值0.91
IDX_InsuredName :(猫和划伤和发烧)
SOLR 7.1最高分为12.99分,最低分为11.25分 SOLR 4.10.2最大3.97和最小值0.77
查看值的范围是如何不同的(7.1中的范围不要低至0.x) 另请注意,当我在7.1中为搜索词添加一个单词时,最高分数会翻倍。最重要的是,4.10.2中的范围重叠 - 但7.1不重要。
更多信息向您展示我如何使用此信息,以及为什么会导致问题。
我得到的公司名称如“bobs cabinetry”和另一家“所有美国科技企业”
我按公司名称运行两次SOLR查询,我称之为1-AND,1-OR,2-AND,2-OR。
IDX_Company:(bobs AND cabinetry) &f=*,score,requestid:"1-AND"
IDX_Company:(bobs OR cabinetry) &f=*,score,requestid:"1-OR"
IDX_Company:(all AND american AND tech AND enterprise) &f=*,score,requestid:"2-AND"
IDX_Company:(all OR american OR tech OR enterprise) &f=*,score,requestid:"2-OR"
我将结果组合在一起按降序排序,然后取前750行。(requestid让我知道结果来自哪个查询)
由于分数范围的变化,排序将所有美国科技企业行推到结果的顶部(因为没有重叠),并且当前750名被采取时,所有的bobs木工被删除从结果。
是否有一些配置设置我可以更改以使分数计算像4.10.2中那样运行?
还是其他什么?
答案 0 :(得分:1)
对于初学者来说,Solr6中的相似性变为BM25,所以这应该是可以做的事情。如果你想尽可能多地获得类似于4.x的分数,我会: