我正在尝试根据匹配属性(用户)将时间窗口中的一堆事件批处理在一起。例如,以下事件在 1 秒内通过 esper:
用户 | 档案
A | a1.sys
A | a2.inf
一个 | a3.sys
B | b1.sys
B | b2.sys
A | a4.sys
B | b3.inf
我想按用户批处理事件并输出以下两组事件:
输出 1
A | a1.sys
A | a2.inf
一个 | a3.sys
A | a4.sys
输出 2
B | b1.sys
B | b2.sys
B | b3.inf
关键是这些组需要作为一个集合输出,而不是每个事件一个输出。我需要模拟从以下查询中获得的响应类型(其中事件 a、b 和 c 作为集合返回):
SELECT * FROM pattern[every a -> b -> c]
我只是不知道如何塑造这样的查询。我已经尝试了以下方法,但它没有将事件批处理在一起。
select * from ActivityEvent().std:groupwin(User).win:time_batch(5)