码迷,mamicode.com
首页 > 其他好文 > 详细

aggregations 详解1(概述)

时间:2016-05-16 21:28:28      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:

aggregation分类

aggregations —— 聚合,提供了一种基于查询条件来对数据进行分组的方法。类似于 SQL 中的 group by 操作。

聚合可以嵌套,由此可以组成复杂的操作(Bucketing聚合可以包含sub-aggregation)。

聚合整体上可以分为 3 类:

1. Bucketing:桶分聚合:

  • 此类聚合会有一个关键字(field、script),以及一些分组的标准(条件)。执行聚合操作时候,文档会对每一个分组标准进行判断,如果文档满足了某个标准,该文档就会被分为该组(fall in)。

2. Metric:度量值聚合:

  • 对一组文档进行跟踪并计算其度量值的聚合。

3. Pipeline:管道聚合:

  • 对其它聚合操作的输出及其关联指标进行聚合。

 

aggregation结构

"aggregations" : {                                //定义聚合对象,也可用 "aggs"
      "<aggregation_name>" : {                    //聚合的名称,用户自定义
          "<aggregation_type>" : {                //聚合类型,比如 "histogram"
              <aggregation_body>                  //每个聚合类型都有其自己的结构定义
          }
          [,"meta" : {  [<meta_data_body>] } ]?
          [,"aggregations" : { [<sub_aggregation>]+ } ]?    //可以定义多个 sub-aggregation
      }
      [,"<aggregation_name_2>" : { ... } ]*       //定义额外的多个平级 aggregation,只有 Bucketing 类型才有意义
}

 

aggregations 详解1(概述)

标签:

原文地址:http://www.cnblogs.com/licongyu/p/5499388.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!