我想使用桶聚合按数组聚合。 示例文件:
1. {"arrayField" : ["1", "2", "3]}
2. {"arrayField" : ["1", "2", "3]}
3. {"arrayField" : ["4", "2", "3]}
4. {"arrayField" : ["1", "2", "3, "4"]}
在这个例子中,应该有三个桶:
常规术语聚合将事件分为4个桶(" 1"," 2"," 3"," 4") ,但这不是我正在寻找的聚合。
我能够实现这种聚合:
"terms": {
"script" : {
"inline": "def total = ''; for (def item : doc['DESTINATIONS_ARR']) { total += (item + ',');} return total;"
}
}
但我正在寻找更好/更有效的方式。 这也适用于数字/日期数组。
谢谢。