是否可以聚合Elastic文档的字段的键?我通读了Elastic aggregation documentation并尝试了一些编码,但没有成功。

现有文件:

{
    "analysis": {
      "v1": {"a":1, "b":2}
    }
}


{
    "analysis": {
      "v1": {"a":3, "b":4}
    }
}


{
    "analysis": {
      "v2": {"a":5, "b":6}
    }
}


{
    "analysis": {
      "v1": {"a":7, "b":8},
      "v2": {"a":9, "b":10},
    }
}

聚合的预期结果是键的数量:
{
    "v1": 3,
    "v2": 2
}

更新了源JSON

最佳答案

试试这个:

GET /your_index_name/your_type_name/_search
{
  "size": 0,
  "aggs": {
    "v1": {
      "filter": {
        "exists": {
          "field": "analysis.v1"
        }
      }
    },
    "v2": {
      "filter": {
        "exists": {
          "field": "analysis.v2"
        }
      }
    }
  }
}

10-08 11:59