Event-Time Watermark

An event-time watermark expresses how far processing has progressed in event time under a source or engine policy. Operators can use it with triggers and lateness rules to emit results or retire state. It is distinct from an incremental extraction watermark, which records a position used to fetch subsequent source changes.

In a toy policy, the maximum observed timestamp is 09:08 and the delay is three minutes, giving watermark 09:05. If windows close when their end is at or before that watermark, [09:00, 09:05) closes. This is a policy example, not every engine’s boundary convention. The delay is not a timer attached to each event; no newer timestamp means this particular watermark stops.

A heuristic threshold can be passed by a later arrival. Specify whether that arrival revises a result, goes to a correction route, or is excluded. Multiple inputs often advance at different speeds; a minimum-based policy can stall on an idle input. Excluding idle inputs changes the treatment needed when they resume. A bad future timestamp can also move a maximum-based watermark too far, so validate the timestamp before using it.

Reference: Flink watermark generation and idleness.


Discover more from Insightful Data Lab

Subscribe to get the latest posts sent to your email.

Similar Posts

Questions, corrections, or additional insights?

This site uses Akismet to reduce spam. Learn how your comment data is processed.