概要:字段折叠其实就是聚合,不过在es中字段折叠是单独一个模块,聚合也是一个模块,在某些时候两者可以实现同样的功能,字段折叠是简单的聚合,而聚合aggs则是一个大模块,里面有更多更详细的各种聚合功能。本文只说字段折叠,不讲解agg模块,感兴趣的话你可以去官网。
字段折叠:
GET cdr-2018-12*/_search { "query": { "bool": { "must": [ {"range": { "hold_time": { "gt": 0 } }} ] } }, "collapse" : { "field" : "machine_id" }, "sort": [{"start_time":"desc"}], "size": 1000 } #默认情况下,collapse字段折叠,取出的是聚合组中最小的一条数据,如果需要最大的那一条数据,可以用sort来排序。查询结果如下: { "took" : 38963, "timed_out" : false, "_shards" : { "total" : 30, "successful" : 30, "skipped"