Event-driven applications can be used in cases where the incoming events need to trigger other internal or external action.
Consider an event-driven application ingesting events from multiple sources. If timeliness between input sources is valuable information the most straightforward approach to coordinate that is to write the original timestamp of recording the event to the event itself. For Flink, time is distinguished between event time and processing time as shown in the illustration below. Event time is defined by the time the event is created. Event time is already embedded in the record, before entering Flink. Processing time is the time at which the operator processes data. If an application is process time-based, the system clock on the machine is used for the operations.