弹性搜索聚合文档版本的总和

时间:2018-02-15 23:00:15

标签: elasticsearch

我的问题陈述如下 每次交易发生时,我都会去创建/更新交易条目。 Transaction对象看起来如下所示

_id: <tenantId>_<productId>_<trasction_month>
{
   "tenant" : "tenantId",
   "product" : "productId",
   "timestamp" : <epoch timestamp utc>
   "month" : "transaction month"
}

注意,我们可以在一个月内拥有数千笔交易。 对于给定的租户,我想找出每月的总交易量。

我希望以下内容

{
    "aggs": {
        "transactions": {
          "sum": {
            "field": "_version"
          }
       }
    }
}

但是上面的确无效。它给出了以下错误

{
    "type": "illegal_argument_exception",
    "reason": "Fielddata is not supported on field [_version] of type [_version]"
}

我们在这里能做的最好的是什么?我不想在文档中维护自己的版本,因为每次更新都需要搜索/后跟更新。这会给es集群带来很大压力,因为我们的交易在多租户环境中非常频繁。

0 个答案:

没有答案
相关问题