Elasticsearch允许您从文档中的命中字段计算存储桶上的指标。但是,如果我想从聚合上的其他指标计算一个指标,该怎么办呢?
例如,我将广告活动的数据存储在Elasticsearch中。我按日期聚合文档,并添加daily_spend和daily_clicks指标(通过汇总每个day存储桶中文档的spend和clicks指标)。现在我想添加一个cpm指标,它是根据daily_spend和daily_clicks指标计算得出的。我该怎么做?
下面是我的问题:
{
"query": {
"filtered": {
"filter": {
"term": {
"campaign_id": 1234
}
}
}
},
"aggs": {
"day": {
"terms": {
"field": "day"
},
"aggs": {
"daily_spend": {
"sum": {
"field": "spend"
}
},
"daily_clicks": {
"sum": {
"field": "clicks"
}
},
"cpc": {
//daily_spend/daily_clicks
}
}
}
}
}发布于 2015-03-11 01:51:07
没有一种方法可以从其他两个聚合中提取数据并对其执行其他操作。
最好的方法是在从查询中检索到数据之后,对daily_spend和daily_clicks聚合值执行除法运算。
https://stackoverflow.com/questions/28953723
复制相似问题