ElasticSearch聚合合并成一个数组

时间:2018-10-04 20:27:58

标签: elasticsearch elasticsearch-aggregation

我有一些看起来像这样的文件:

{"_id": 1, "session_id": "foo", "reply": "yes"}
{"_id": 2, "session_id": "foo", "reply": "no"}
{"_id": 3, "session_id": "foo", "reply": "maybe"} 

我想运行一个聚合,该聚合为我提供如下输出:

{"session_id": "foo", replies: ["yes","no","maybe"] }

这可能吗?我想使用复合聚合查询,以便可以利用分页,因为有数百万条记录。

我想到了这样的东西:

{
    "size": 0,
    "aggs" : {
        "my_buckets": {
            "composite" : {
                "sources" : [
                    { "session_id": { "terms" :       { "field": "sessionId.keyword" } } },
                     { "replies": { "terms": { "field": "reply.keyword" } } }
                ]
            }
        }
     }
}

但是并没有给出我想要的输出。我正在使用ES 6.4

谢谢

0 个答案:

没有答案