检测某个事件是否存在

Detect absence of a certain event

在 FlinkCEP 的文档中,我发现我可以使用 notFollowedBynotNext.

强制特定事件不会在其他两个事件之间发生

但是,我想知道我是否可以在时间 X 后检测到某个事件的缺失。 例如,如果一个事件 A 在 10 秒内没有跟随另一个事件 A,则发出警报或执行某些操作。

是否可以定义一个 FlinkCEP 模式来捕捉这种情况?

提前致谢, 温贝托

虽然 Flink CEP 不支持在 Pattern 末尾使用 notFollowedBy,但是有一种方法可以通过利用超时功能来实现这一点。

Flink 训练包括一个 exercise,其中 objective 用于识别带有 START 事件但在两小时内没有跟随 END 事件的出租车。您将找到使用 CEP 的本练习的解决方案 here.

主要思想是定义一个 Pattern of A followed by A within 10 seconds,然后捕获超时的情况。