云搜索服务 CSS-配置OpenSearch集群聚合增强:高基字段聚合

时间:2025-08-22 17:22:51

高基字段聚合

高基字段一般采用直方图分组聚合,利于处理某个区间内的数据。

例如,当需要对典型的高基字段“date”进行聚合增强时,可以执行以下操作步骤实现聚合任务。
  1. 执行如下命令,设置索引testindex。
    PUT testindex
    {
      "mappings": {
        "properties": {
          "timestamp": {
            "type": "date",
            "format": "yyyy-MM-dd"
          },
          "score": {
            "type": "double"
          }
        }
      },
      "settings": {
        "index": {
          "search": {
            "turbo": {
              "enabled": "true" 
            }
          },
          "sort": {
            "field": [
              "timestamp"
            ]
          }
        }
      }
    }
    表3 高基字段聚合参数说明

    参数

    参数类型

    描述

    index.search.turbo.enabled

    Boolean

    是否启用聚合增强能力。使用聚合分析时必须启用聚合增强能力。

    取值范围:

    • false(默认值):不启用聚合增强。
    • true:启用聚合增强。

    index.sort.field

    Array of strings

    指定排序键。排序键用于定义文档排序所依据的字段。

    在配置排序键时,可以指定一个或多个字段。当多个字段被指定时,排序将按照字段的顺序依次进行。第一个字段的排序结果将作为主要排序依据,第二个字段则在第一个字段排序结果的基础上进行次级排序,以此类推。

    取值范围:必须是索引包含的字段。

  2. 执行如下命令,导入样例数据。
    PUT /_bulk
    { "index": { "_index": "testindex", "_id": "1" } }
    { "date": "2025-01-01", "score": "12.0"}
    { "index": { "_index": "testindex", "_id": "2" } }
    { "date": "2025-01-02","score": "24.0"}
    { "index": { "_index": "testindex", "_id": "3" } }
    { "date": "2025-01-01","score": "53.0"}
    { "index": { "_index": "testindex", "_id": "4" } }
    { "date": "2025-01-02", "score": "22.0"}
    { "index": { "_index": "testindex", "_id": "5" } }
    { "date": "2025-01-01", "score": "99.0"}
    { "index": { "_index": "testindex", "_id": "6" } }
    { "date": "2025-01-02","score": "26.0"}
  3. 执行查询命令,实现高基字段聚合查询。

    该聚合任务是对时间字段date做直方图分组,然后求score的平均值。

    POST testindex/_search?pretty
    {
      "size": 0,
      "aggs": {
        "groupbytime": {
          "date_histogram": {
            "field": "date",
            "calendar_interval": "day"
          },
          "aggs": {
            "avg_score": {
              "avg": {
                "field": "score"
              }
            }
          }
        }
      }
    }
support.huaweicloud.com/usermanual-css/css_01_0110.html