检查 siddhiQL 中未发生的事件

Check for non-occuring events in siddhiQL

我有一个用例,我需要检查特定事件 A 发生后,它是否会在接下来的 20 分钟内再次发生。我不能使用窗口,因为我们每秒都会收到很多事件,而 siddhiQL 最终可能 运行 内存不足,因为窗口会将事件存储在内存中。还有其他更好的方法吗?

您可以使用 siddhi pattern 检测事件未发生。

from e1=TestStream -> not TestStream[e1.roomNo == roomNo and temp <= e1.tempSet] for '20 min'
select e1.roomNo as roomNo
insert into AlertStream;