elasticsearch - 使用 Elasticsearch 计算文档数量

标签 elasticsearch

如果想计算(Elasticsearch 的)索引中的文档数量,那么有(至少?)两种可能性:

  • 直接计数

    发布 my_index/_count

    应该返回 my_index 中的文档数。

  • 使用搜索

    这里可以使用 count 作为 search_type 或其他类型。在任何一种情况下,总计数都可以从字段 ['hits']['total']

  • 中提取

我的问题是:

  • 不同方法之间有什么区别?哪一个 我应该更喜欢?

  • 我提出这个问题是因为我遇到了不同的结果 取决于选择的方法。我现在正在调试 问题,然后弹出这个问题。

最佳答案

_count 可能要快一点,因为它不必执行带有排名和结果获取的完整查询,并且可以简单地返回大小。

不过,如果能多了解一下您是如何设法获得不同结果的,那将会很有趣。为此,我需要更多信息,例如您要发送的确切查询以及索引是否正在进行索引。

但假设您执行以下操作

  1. 索引一些文档
  2. 刷新索引

_search_count(匹配所有查询)应该返回相同的总数。如果不是,那就太奇怪了。

关于elasticsearch - 使用 Elasticsearch 计算文档数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25739888/

相关文章:

elasticsearch - Elasticsearch-搜索小于min_gram的术语

elasticsearch - 如何获取elasticsearch索引中的所有字段名

elasticsearch - 使用括号时 OpenSearch 返回不同的结果

json - 更改结果集结构Elasticsearch

python - 为什么在Elastic Search中的聚合中实现分页时 'from'关键字变得无法识别

amazon-web-services - 如何在速度模板中使用字符串替换(AWS appsync + elasticsearch)?

elasticsearch - 将Elasticsearch 2.4升级到5.6后获取快照

elasticsearch - Elastic Search 中的权重函数_分数函数

regex - 基于Logstash中的模式匹配创建索引

elasticsearch - logstash-Kibana中的geoip无法使用IP地址显示任何信息