更新时间:2024-04-18 GMT+08:00
低基高基字段混合
对于低基字段和高基字段混合的场景,假如有如下查询语句:
POST testindex/_search { "size": 0, "aggs": { "groupby_region": { "terms": { "field": "region" }, "aggs": { "groupby_host": { "terms": { "field": "host" }, "aggs": { "groupby_timestamp": { "date_histogram": { "field": "timestamp", "interval": "day" }, "aggs": { "avg_score": { "avg": { "field": "score" } } } } } } } } } }
先对低基字段做分组,然后再对高基字段做直方图,如果要对上述查询使用聚合增强特性,那么设置如下:
- 聚簇键是排序键的前缀子集。
- 高基字段必须在排序键中,且高基字段必须在最后一个低基字段后面。
// 索引设置 "settings" : { "index" : { "search" : { "turbo" : { "enabled" : "true" // 开启优化 } }, "sort" : { // 指定排序键 "field" : [ "region", "host", "timestamp", "other" ] }, "cluster" : { "field" : [ // 指定聚簇键 "region", "host" ] } } }
父主题: 聚合增强