我正在进行运行2.2版本的弹性搜索。我已经创建了索引和加载的示例文档。我发现了一些问题。当我给出
GET index/type/_count
我得到了正确答案
{
"count": 9998,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
}
}
但是当我看到使用http://IP:9200/_cat/indices?v
health status index pri rep docs.count docs.deleted store.size pri.store.size
yellow open index 5 1 79978 0 32.1mb 32.1mb
docs.count:79978。哪个错了。
为什么我看到docs.count的值错误。确切的文件数是9998
答案 0 :(得分:18)
GET index/type/_count
将返回顶级文档计数。
docs.count
中的 _cat/indices
返回所有文档的计数,包括为嵌套字段创建的人工文档。
这就是你看到差异的原因:
因此,如果一个ES文档包含一个包含5个子元素的嵌套字段,您将看到1个ES文档,但是6个Lucene文档。根据计数来判断,每个ES文档中都有7到8个嵌套元素。