如何查看/调试SOLR查找结果的方式?

16

假设我搜索了"ABLS",但SOLR返回的结果对我来说毫无意义。如何调试以确定SOLR为何选择返回此记录?

6个回答

17

debugQuery=true可以帮助您获取详细的评分计算和每个得分的解释。

有关评分概述,请参见链接

有关调试信息的详细说明,请参考链接


3
还有一些工具,比如Splainerexplain.solr.pl,可以帮助解析解释信息。 - Doug T.

5
您可以在URL中添加debugQuery=true&indent=true来检查结果。您还可以使用Solr中的分析工具。转到管理页面并单击分析。您需要阅读wiki,以更深入地了解这两个工具。

1

queryDebug 可以让你了解为什么你的评分看起来是这样的(以及每个字段的相关性)。 我将会得到一些结果,你可能不理解,然后使用Solr的分析工具进行调试。 你应该在以下位置找到它:

/admin/analysis.jsp?highlight=on

或者,您可以打开结果的高亮显示功能,以查看实际匹配结果


1
Solr查询充斥着短参数,很难阅读和修改,特别是当参数太多时。之后更难调试并理解为什么一个文档比另一个更相关。调试说明输出通常太大而无法适应一页。我发现这个Google Chrome扩展程序非常有用,可以清晰地查看Solr查询的说明和调试信息。

0

有两种方法可以做到这一点。第一种是查询级别,这意味着在您的查询中添加debugQuery=on。这将包括以下几个方面:

  • 解析的查询
  • 调试时间信息
  • 详细的评分信息,可帮助您分析为什么给定文档得分。

除此之外,您还可以使用[explain]转换器并将其添加到您的fl参数中。例如...&fl=*,[explain],这将导致您的文档具有评分信息作为另一个字段。

评分信息可能非常广泛,并包括相似性算法执行的计算。如果您想了解更多关于Solr中相似性和评分算法的信息,请查看我和我的同事Radu在Activate会议上的演讲:https://www.youtube.com/watch?v=kKocQdYGVJM


0
对于那些仍在使用非常老的 solr 3.X 版本的人来说,"debugQuery=true" 不会展示调试信息。你应该指定为 "debugQuery=on"。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接