2017-08-24 90 views
0

我试图通过300秒获得销售鸿沟的总量就得到每秒销售金额DSL查询:销售金额每秒在五分钟窗口

我至今只在五分钟窗口能够构造查询直到这里。似乎没有办法对“total_value_five_mins”进行划分。

我elasticsearch版本是2.3

尝试了所有的elasticsearch文档无法理解一个单一的一个。

{ 
    "size": 0, 
    "query": { 
    "aggs" : { 
     "five_minute_data" : { 
      "date_histogram" : { 
       "field" : "timestamp", 
       "interval" : "5m" 
      }, 
      "aggs": { 
       "total_value_five_mins": { 
       "sum": { 
        "field": "sales" 
       } 
       } 
      } 

     } 
    } 
} 

回答

1

您可以使用脚本在sum聚集这样的:

{ 
    "size": 0, 
    "query": { 
    "aggs" : { 
     "five_minute_data" : { 
      "date_histogram" : { 
       "field" : "timestamp", 
       "interval" : "5m" 
      }, 
      "aggs": { 
       "total_value_five_mins": { 
       "sum": { 
        "script": { 
        "inline": "doc.sales.value/300" 
        } 
       } 
       } 
      } 

     } 
    } 
}