云搜索服务 CSS-配置Elasticsearch集群聚合增强:低基字段分组聚合

时间:2024-10-08 18:50:01

低基字段分组聚合

低基字段一般采用分组聚合,在排序的情况下具备较好的数据聚簇性,利于向量化批量处理数据。

例如,查询语句如下所示。

POST testindex/_search
{
  "size": 0,
  "aggs": {
    "groupby_region": {
      "terms": {
        "field": "region"
      },
      "aggs": {
        "groupby_host": {
          "terms": {
            "field": "host"
          },
          "aggs": {
            "avg_cpu_usage": {
              "avg": {
                "field": "cpu_usage"
              }
            }
          }
        }
      }
    }
  }
}

当需要对“region”“host”这两个低基字段进行聚合增强,则需要对索引进行如下设置。

// 索引设置
"settings" : {
    "index" : {
        "search" : {
            "turbo" : {
                "enabled" : "true" // 开启优化
            }
        },
        "sort" : { // 指定排序键
            "field" : [
                "region",
                "host",
                "other"
            ]
        },
        "cluster" : {
            "field" : [ // 指定聚簇键
                "region",
                "host"
            ]
        }
    }
}

聚簇键必须是排序键的前缀子集。

support.huaweicloud.com/usermanual-css/css_01_0173.html