繁体   English   中英

Searchkick多模型搜索相关性问题

[英]Searchkick multi-model search relevancy issues

我们一直在重建旧的“快速导航”/从Tire搜索到Searchkick的过程,因为标准分析器和标记器的结果似乎对我们的需求很好。 但是,我们需要搜索多个模型,这会给我们带来一些问题。

该域名是虚拟主机。 考虑表示包含Account的服务器的对象,包含数据库和应用程序。 应用程序具有许多域,而域又具有SslCertificate。

这意味着当我们搜索“某事”时,如果我们有一个数据库“某事”,一个帐户“某事物”和一个域“something.com”,我们希望帐户在顶部,然后是数据库和域。 问题是因为我们在不同的索引上搜索这些分数并不可靠。

对于所有模型,设置使用number_of_shards 1。 我认为问题源于这样一个事实:如果我理解正确,“独特性”会得到回报。 也就是说,如果5000个对象中有1个数据库匹配,并且1个帐户匹配100个,则数据库匹配更独特并且得分更高。

我们如何调整这个? 据我所知,在某些模型中没有办法提高字段的分数。

最好的办法是修改Searchkick生成的查询。 https://github.com/ankane/searchkick#advanced

如果您要从Tyre迁移,请尝试相同的提升代码。

或者如果不能减少它,请尝试以下方法之一: http//www.elasticsearch.org/guide/en/elasticsearch/reference/0.90/query-dsl-function-score-query.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM