Solr 1与Solr 4 Dismax Handler的不同分数

时间:2013-02-07 19:06:39

标签: solr lucene dismax

我使用this method将我的Solr 1.4索引迁移到Solr 4.0,并且在保持功能的同时保持我的solrconfig.xml和schema.xml尽可能保持不变。

我正在使用DisjunctionMaxQuery(dismax / solr.DisMaxRequestHandler)requestHandler并在Solr 1.4和Solr 4之间比较我的搜索结果。在URL中使用?debugQuery = on ,我可以看到Solr版本之间parsedQuery部分几乎相同,但生成的分数不同。 (explain部分 不同,但计算时间很长而且很钝。)

示例查询:q = foo
示例回复:
Solr 1.4:

title: "foo (32-bit)"
score: 3.8850176

Solr 4.0:

title: "foo (32-bit)"
score: 2.1525226

尽管有相同的请求处理程序和相同的索引,但是这会导致分数的显着差异吗?

1 个答案:

答案 0 :(得分:0)

如果解释部分不同,那么它使用不同的计算来计算分数,这样它们就会有所不同。无论如何,分数非常随意,并且基本上仅用于在查询的一个结果集内进行比较,换句话说,将一个查询的分数与另一个查询的分数进行比较是没有意义的。这可能适用于不同版本的solr,特别是如果计算的方式不同。