elasticsearch - Elasticsearch 相同查询的文档数量不同

标签 elasticsearch

我对elasticsearch的行为无法理解(我使用elasticsearch 5.2)。我有约500万个文档的索引。我尝试搜索。例如,我使用以下查询:

{
    "query": {
        "match_all": {}
    }
}

如果我多次执行查询,则会在hits.total中得到不同数量的文档。不同的是1个文档(我第一次有5032511文档,另一次是5032510)

同样的情况,如果我执行计数查询(第一次我有5032511个文档,另一个时间:5032510)

有人知道为什么会这样吗?当执行查询时,我需要做的是每次获得相同的计数?

附言我为此索引使用number_of_shards:5,number_of_replicas:1。也许这对解决问题很重要。

最佳答案

如果这是 Activity 索引,并且有一些客户在写它,则最可能的根本原因是长索引刷新(这是大型索引的常用优化方法)。尝试在计数之前执行refresh query。但要注意,对于高负荷索引而言,它可能会有些昂贵。

关于elasticsearch - Elasticsearch 相同查询的文档数量不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44407621/

相关文章:

elasticsearch - 为并行查询优化 Elasticsearch

elasticsearch - 我可以在ElasticSearch日志中忽略这些查询异常吗?

angularjs - Angular,使用聚合结果填充下拉列表

twitter - Elasticsearch的索引标准

elasticsearch - 哪个 Elasticsearch 请求主体等效于URI搜索?

scala - Scala:使用Spark读取Elasticsearch中的数组值

java - 在 Java Elasticsearch SearchRequestBuilder 中找不到方法execute()

elasticsearch - 用Elasticsearch过滤

elasticsearch - Elasticsearch curl查询结合嵌套,存在,不存在查询

java - 使用 Java 在 Elasticsearch 中按查询更新