gpt4 book ai didi

elasticsearch - 主/副本计分不一致

转载 作者:行者123 更新时间:2023-12-02 23:02:28 31 4
gpt4 key购买 nike

我们有一个群集,其中包含3个主分区,每个主分区有2个副本。主/副本分片的总文档数相同;但是,对于同一查询/文档,我们得到3个不同的分数。当我们将preference = primary添加为查询参数时,每次都会获得一致的分数。

我们能想到的唯一解释是主副本之间的DF计数不同。主/副本分片之间的不一致在哪里?如何解决这个问题?我们正在使用1.4.2。

编辑:
我们只是重新索引了要查询的文档类型,但是评分仍然不一致。

最佳答案

当涉及段合并时,主分片和副本分片具有不同的“路径”。意思是,段之间的数量和大小可以不同。每个共享都照顾自己独立于其他分片的部分。

之所以在计算分数时如此重要,是因为合并是实际删除已删除文档的时刻。在此之前,已删除的文档仅被标记为已删除(并在查询已经运行后从查询结果中取出)。因此,这意味着它可以影响计算分数的算法。

更具体地说-分片中的文档总数用于[IDF计算](http://lucene.apache.org/core/4_3_0/core/org/apache/lucene/search/similarities/DefaultSimilarity.html#idf(long,long))和文档频率(docFreq):

return (float)(Math.log(numDocs/(double)(docFreq+1)) + 1.0)

而且,此文档数量包括已删除(更准确地说,标记为已删除)的文档。还请看一下关于同一主题的 this github issue and Simon's comments

关于elasticsearch - 主/副本计分不一致,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30947367/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com