更改计算的术语子聚合值

时间:2019-01-25 20:43:31

标签: elasticsearch elasticsearch-aggregation

是否有可能影响术语(子)聚合的值的计算方式?基本上,我需要这样做,因此我可以获取"attr_value"聚合中的所有可用键,然后再与另一个聚合合并,该聚合返回相同键的子集,但具有真实计数。我不知道如何在一个聚合中产生此结果,因此决定自己通过lodash将结果合并到两个aggs的后端代码中。

我有这个嵌套的聚合:

"aggs": {
  "keyword": {
    "nested": {
      "path": "facets_keyword"
    },
    "aggs": {
      "attr_name": {
        "terms": {
          "field": "facets_keyword.facet_name"
        },
        "aggs": {
          "attr_value": {
            "terms": {
              "field": "facets_keyword.facet_value" // <- need keys to stay, but calculated values to be all 0s
            }
          }
        }
      }
    }
  }

我希望它返回0而不是计算值:

...
  buckets: [
  {
    key: 'category',
    doc_count: 0,
    attr_value: {
      doc_count_error_upper_bound: 0,
      sum_other_doc_count: 0,
      buckets: [
        {
          key: 'cmp',
          doc_count: 0,
        },
        {
          key: 'act',
          doc_count: 0,
        },
        {
          key: 'acc',
          doc_count: 0,
        },
        {
          key: 'ats',
          doc_count: 0,
        }
      ],
    },
  },
...

0 个答案:

没有答案