I am a newbie to Flink and came across an article that mentioned
"A flink developer is responsible for moving event time forward by arranging the watermark in the stream".
So, I figured out the possible answer for this. As per my knowledge, if I Instruct the program to emit watermarks every 5
seconds. Actually, every 5 seconds, Flink invokes the getCurrentWatermark()
method of AssignerWithPeriodicWatermarks
. If the method returns a non-null value with a timestamp larger than the timestamp of the previous watermark, the new watermark is forwarded. This check is necessary to ensure event time continuously increases; otherwise, no watermark is produced.
So, once everything within a window has arrived it will trigger the operators and computations will be done accordingly and what is the role of the processfunctions
? Watermarks can be used by processfunctions
only, right?