我使用PatternTimeoutFunction
在事件序列超出定义的时间窗口时丢弃事件序列。
我正在设置水印如下
public Watermark checkAndGetNextWatermark(Event lastElement, long extractedTimestamp) {
return new Watermark(extractedTimestamp);
}
当模式超时发生时,timeoutTimestamp
应该等于第一个事件时间戳+时间窗的值
但是在收到下一个水印后超时正在触发。在收到下一个水印或基于timeWindow
到期后触发超时?
答案 0 :(得分:1)
如果您使用活动时间,则会通过接收水印来触发超时。因为如果您收到此时间戳的水印,您只能确保已经看到所有元素达到某个点。
这意味着超时时间戳可以大于第一个事件时间戳+窗口长度,具体取决于下一个水印的值。因此,超时时间戳实际上是您意识到模式超时的事件时间。