【问题标题】:elasticsearch sub-aggregations failing弹性搜索子聚合失败
【发布时间】:2016-07-15 23:15:06
【问题描述】:

在 ES 2.2 上,我正在尝试以下查询:

{
  "query": {
    "bool": {
      "must": {
        "match_all": {}
      },
      "filter": {
        "range": {
          "startDate": {
            "gt": "2016-07-01"
          }
        }
      }
    }
  },
  "aggs": {
    "numbera": {
      "terms": {
        "field": "numbera",
        "size": 0,
        "aggs": {
          "some": {
            "avg": {
              "field": "callDuration"
            }
          }
        }
      }
    }
  }
}

这给出了以下错误:

{
    "type": "search_parse_exception",
    "reason": "Unknown key for a START_OBJECT in [numbera]: [aggs].",
    "line": 20,
    "col": 18
}

我很茫然,那个查询有什么问题?

从查询中删除子聚合会给我一个正确的结果。

【问题讨论】:

    标签: elasticsearch aggregation


    【解决方案1】:

    嵌套的aggs 应该与"terms": {...} 处于同一级别,而不是嵌套在它之下。

    "aggs": {
      "numbera": {
        "terms": {
          "field": "numbera",
          "size": 0
        },
        "aggs": {
          "some": {
            "avg": {
              "field": "callDuration"
            }
          }
        }
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-10
      • 1970-01-01
      • 2019-11-08
      • 2021-02-19
      • 2023-03-18
      • 2021-10-11
      • 1970-01-01
      相关资源
      最近更新 更多