elasticsearch聚合统计-管道聚合

聚合路径

聚合路径的定义如下:

  • 聚合分隔符为>
  • 指标分隔符为.
  • 聚合名为<聚合的名称>
  • 指标名为<指标的名称>
  • 路径为<聚合名>[<聚合分隔符><聚合分隔符>]*[<指标分隔符><指标>]

例如:基于女性人群的平均身高对国家这个指标进行倒序排序。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
GET /testindex/testtype/_search
{
"aggs": {
"countries": {
"terms": {
"field": "country",
"order": {
"females>height_stats.avg": "desc"
}
},
"aggs": {
"females": {
"filter": {
"term": {
"gender": "female"
}
},
"aggs": {
"height_stats": {
"stats": {
"field": "height"
}
}
}
}
}
}
}
}
>