elasticsearch - Elasticsearch 从术语聚合中获取 doc_count 的平均值

标签 elasticsearch elasticsearch-aggregation

我在 Elasticsearch 中有如下​​术语查询。

GET http://localhost:9200/adapters/request/_search
{
    "query": {
        "bool" : {
            "must" : {
                "match" : { "adapterName" : "EnginePushableAdapter" }
            },
            "filter": {
                "range" : {
                    "request.requestTime" : {
                        "gte" : 1492080226172,
                        "lte" : 1492080725964
                    }
                }
            }
        }
    }, 
    "aggs" : {
        "call_count" : {
            "terms" : {
                "field" : "deviceId"          
            }
        }
    }
}

有没有办法计算术语聚合返回的 doc_count 的平均值?像这样

    "avg_agg" : {
        "avg": { "field": "call_count.doc_count" }

    }

也就是说,我想对前面的聚合字段取平均值。

最佳答案

我认为您可能正在寻找平均桶聚合。

https://www.elastic.co/guide/en/elasticsearch/reference/5.3/search-aggregations-pipeline-avg-bucket-aggregation.html

尝试类似的东西

...
"my_count_avg": {
  "avg_bucket": {
    "buckets_path": "call_count>_count"
  }
}

关于elasticsearch - Elasticsearch 从术语聚合中获取 doc_count 的平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43391694/

相关文章:

elasticsearch - 如何从elasticsearch标记器中删除一个定界符?

ElasticSearch:inner_hits 和 hightlight_query

elasticsearch - 如何在 Elasticsearch 中存储商店产品

elasticsearch - 在 Elasticsearch 中更改集群名称

elasticsearch - 如何在同一个字段上聚合 :value which are specified in query in elasticsearch

node.js - 尝试调用Elasticsearch客户端时,以json fromat作为输入参数的Elasticsearch模板查询无法在 Node js中解析

elasticsearch - Elasticsearch 搜索结果多样化

elasticsearch - ElasticSearch:聚合过滤

java - Elasticsearch 子聚合 tophits JAVA API 无法正常工作

elasticsearch - 子列表聚合 Elasticsearch