4
votes

I'm working on implementing a use case wherein different physical devices are sending events, and due to network/power issues, there can be a delay in receiving events at flink source. One of the operators within the flink job is the Pattern operator, and there are certain patterns which are time sensitive, so I'm using Event time characteristic. But the problem comes when there are unpredictable delays in events from a particular device(s), which causes those events to be dropped (as I cannot really define a static bound to allow for lateness).

Since I'm using a KeyedStream, keyed on the source device ID, is there a way to allow each CEP operator instance (one per key) to progress its time based on the event time in the corresponding stream partition. Or in other words, is there a way to generate watermarks per partition in a KeyedStream?

1

1 Answers

3
votes

Flink currently does not support per key watermarks. The watermark is global.