bac*_*ack 9 indexing count elasticsearch
我正在进行运行2.2版本的弹性搜索.我已经创建了索引和加载的示例文档.我发现了一些问题.当我给
GET index/type/_count
Run Code Online (Sandbox Code Playgroud)
我得到了正确的答案
{
"count": 9998,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我看到使用的东西时 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
Run Code Online (Sandbox Code Playgroud)
docs.count:79978.哪个错了.
为什么我看到docs.count的值不正确.确切的文件数是9998
Val*_*Val 20
GET index/type/_count 将返回顶级文档计数.
docs.countin _cat/indices返回所有文档的计数,包括为嵌套字段创建的人工文档.
这就是你看到差异的原因:
因此,如果一个ES文档包含一个包含5个子元素的嵌套字段,您将看到1个ES文档,但是6个Lucene文档.根据计数来判断,每个ES文档中都有7到8个嵌套元素.