假设我搜索了"ABLS",但SOLR返回的结果对我来说毫无意义。如何调试以确定SOLR为何选择返回此记录?
debugQuery=true&indent=true
来检查结果。您还可以使用Solr中的分析工具。转到管理页面并单击分析。您需要阅读wiki,以更深入地了解这两个工具。queryDebug 可以让你了解为什么你的评分看起来是这样的(以及每个字段的相关性)。 我将会得到一些结果,你可能不理解,然后使用Solr的分析工具进行调试。 你应该在以下位置找到它:
/admin/analysis.jsp?highlight=on
或者,您可以打开结果的高亮显示功能,以查看实际匹配结果
有两种方法可以做到这一点。第一种是查询级别,这意味着在您的查询中添加debugQuery=on
。这将包括以下几个方面:
除此之外,您还可以使用[explain]
转换器并将其添加到您的fl
参数中。例如...&fl=*,[explain]
,这将导致您的文档具有评分信息作为另一个字段。
评分信息可能非常广泛,并包括相似性算法执行的计算。如果您想了解更多关于Solr中相似性和评分算法的信息,请查看我和我的同事Radu在Activate会议上的演讲:https://www.youtube.com/watch?v=kKocQdYGVJM