【发布时间】:2016-02-17 13:35:11
【问题描述】:
我有一个 USER 类型,它有 EVENT 类型的子级。
事件可以有不同的字段。因此,一个事件可能有一个visitDate 字段,而另一个事件可能是一个人口统计事件并有一个age 字段。
我想做多级聚合,例如,我可以在其中查看每天的年龄细分。即:
1st July
Age: 24 - 10 docs
Age: 25 - 15 docs
2nd July
Age: 24 - 5 docs
Age: 25 - 6 docs
etc
我面临的问题是,如果我进行子聚合,例如:
{
"size": 2,
"aggs": {
"events": {
"children": {
"type" : "event"
},
"aggs": {
"visitDate": {
"terms":{
"field":"visitDate",
"size":0
},
"aggs":{
"byAge":{
"terms":{
"field":"age",
"size":0
}
}
}
}
}
}
}
}
等
第二级聚合(关于年龄)只能访问与 visitDate 上的聚合匹配的子文档,而不是任何其他属于同一父级的子级的子文档。
如何进行任意深度聚合,但每次连续聚合都会查看该存储桶中孩子的父母?
【问题讨论】:
标签: elasticsearch