1

我正在使用 ElasticSearch 在 Web 应用程序(Rails + Tire)上实现搜索。在查询 ES 服务器时,有没有办法知道返回的 Json 的哪个字段与查询匹配?

4

2 回答 2

4

最简单的方法是使用高亮功能,请参阅轮胎中的支持:https ://github.com/karmi/tire/blob/master/test/integration/highlight_test.rb 。

不要将解释 API 用于除调试以外的其他目的,因为这会对性能产生负面影响。

于 2013-06-23T14:36:43.203 回答
2

您是否尝试过使用弹性搜索中的解释 API ?explain 的输出为您详细解释了文档匹配的原因以及相关性分数。

用于搜索记录的算法通常比单个字符串匹配复杂得多。此外,鉴于您有可能匹配多个字段(可能具有不同的权重)的术语,可能不容易想出一个简单的答案。但是,查看 Explain API 的输出,您应该能够构造一个有意义的消息。

于 2013-06-23T13:50:17.353 回答