如何在esper上对窗口进行分组(我希望esper按每个组创建窗口。)

时间:2018-08-30 01:58:27

标签: java esper

我希望esper可以按组创建窗口。

select name, sum(val) from SampleEvent.win:length(5) group by name

It work like this

I want that it work like this

我可以使用esper这样实现吗?预先感谢!

1 个答案:

答案 0 :(得分:0)

这是通过Esper中的上下文完成的。上下文定义了分析的生命周期。

从图片中不清楚每个框的开始和结束的条件是什么,或者这些框是否彼此重叠(重叠上下文)或框不重叠(非重叠上下文)。您可以从这里开始。

create context BlueOrRedBox start MyEvent(...some criteria...) end MyEvent(...whatever...);
context BlueOrRedBox select somekey, count(*) from MyEvent group by somekey output snapshot when terminated;

将“ start MyEvent(...某些条件...)”替换为开始框。 将“ end MyEvent(... whatever ...)”替换为任何结束框。 如果开始或结束条件是从某种聚合(例如计数)中得出的,则可能使用单独的语句来检测开始和/或结束条件并使用“插入”。

文档链接:

  1. Non-Overlapping context doc
  2. Solution patterns page
相关问题