Elasticsearch计算所有指数

时间:2015-02-23 06:34:45

标签: elasticsearch

试图获取所有指数的计数。我在网址中使用_all。以下代码有效,但不返回所有索引的数据。

GET /_all/_search?search_type=count&q=_type:invoice
{
  "aggs": {
    "by_index": {
      "terms": {
        "field": "_index"
      }
    }
}

}

输出中跳过了大多数索引。索引是否有限制或我的代码有问题?

1 个答案:

答案 0 :(得分:2)

是,默认情况下,返回结果的限制为10:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/_executing_aggregations.html

  

首先,此示例按状态对所有帐户进行分组,然后返回按计数降序排序的前10个(默认)状态(也是默认值)

同样适用于terms汇总:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-aggregations-bucket-terms-aggregation.html#_size

在你的情况下,你需要这样的东西:

GET /_all/_search?search_type=count&q=_type:invoice
{
  "aggs": {
    "by_index": {
      "terms": {
        "field": "_index",
        "size": 0
      }
    }
  }
}