我们一直在将旧的“快速导航”/搜索从 Tyre 重建为 Searchkick,因为使用标准分析器和标记器的结果似乎可以满足我们的需求。但是,我们需要搜索多个模型,这给我们带来了一些问题。
该域是虚拟主机。考虑代表包含帐户、数据库和应用程序的服务器的对象。应用程序有许多域,而这些域又具有 SslCertificate。
这意味着当我们搜索“something”时,如果我们有一个数据库“something”、一个帐户“something”和一个域“something.com”,我们希望帐户位于顶部,然后是数据库和域。问题是因为我们在不同的索引中搜索这些分数是不可靠的。
设置对所有模型使用 number_of_shards 1。我相信问题的根源在于,如果我理解正确,“独特性”就会得到回报。也就是说,如果 5000 个对象中有 1 个数据库匹配,100 个对象中有 1 个帐户匹配,则数据库匹配更独特,得分更高。
我们如何去调整这个?据我了解,在某些模型中没有办法提高字段的分数。