我在Elasticsearch中有表示事件的文档,这些文档的时间戳如下:
"_source": {
... // other stuff
"eventDate": 1500400000000 // milliseconds since epoch
}
假设我有以下几次活动:
...|.|.....||.|.|...|..|.....
如果离散事件在一定距离内(输入到我的查询中),我想将它们分组为时间块:
...|.|.....||.|.|...|..|.....
└──┘ └─────┘ └───┘
d=4 d=7 d=5
然后我要添加总持续时间并计算组数:
total duration = 16
count = 3
很明显,我通过将其简化为一个非常离散的时间轴来简化了此示例,但是事件可以在任何时间戳记下发生。分组的距离可以在创建时设置,但最好在查询时设置。
这些年来,我在Elasticsearch上做过一些工作,但主要是简单的过滤器和查询,而我只是不知道该如何处理,希望大家能给我带来些帮助。