ElasticSearch桶聚合根据字段去重

本文衔接昨日的 ElasticSearch根据字段去重。

如果桶聚合时,不去重,那么会造成统计的数量和实际输出的数量对不上的情况。那么,如何在桶聚合中根据数据字段去重呢?

这个问题因为限定在ElasticSearch 5.3的版本,没办法用更新版本(6.8及以上)的cardinality。头疼半天,还是浩哥给出了解决方案,故总结下来。

示例代码如下:

{
  "aggs": {
    "agg1": {
      "terms": {
        "field": "field1"
      },
      "aggs": {
        "agg2": {
          "terms": {
            "field": "field2"
          },
          "aggs": {
            "agg3": {
              "terms": {
                "field": "field3"
              }
            }
          }          
        }
      }
    }
  }
}

 

未经允许不得转载:阿藏博客 » ElasticSearch桶聚合根据字段去重