计数返回的值与elasticsearch的状态api之间的差异

时间:2014-12-23 19:26:30

标签: count elasticsearch status

目前我正在计算elasticsearch中索引中的文档数量。

当我使用count api时,它返回:

{
  "count" : 86873223,
  "_shards" : {
    "total" : 29,
    "successful" : 29,
    "failed" : 0
  }
}

但是当我使用状态api时,它返回:

{
  ...,
  "docs" : {
        "num_docs" : 333638298,
        "max_doc" : 429446807,
        "deleted_docs" : 95808509
      },
  ...,
}

我想知道为什么两者之间存在巨大差异。

任何提示?

顺便说一下,我大量使用嵌套对象。这可能是原因吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

每个嵌套文档本身都是一个内部Lucene文档。 因此,您将看到此编号已添加到整个文档集中。