đī¸ 17012025 0114
Time basedâ
| Type | Description | 
|---|---|
| Tumbling | Fixed-size, non-overlapping windows > Each event belongs to exactly one window. | 
| Sliding | Fixed-size windows that overlap > An event can belong to multiple windows. | 
| Session | Dynamically sized windows based on inactivity gaps between events | 
- Have both event / processing time flavours
 - Tradeoffs
- Processing:
- đ Lower latency
 - âšī¸ Cannot correctly process historic data
 - âšī¸ Cannot handle out of order data
 - âšī¸ Non deterministic data
 
 
 - Processing:
 
Count basedâ
| Type | Description | 
|---|---|
| Tumbling | Processes a fixed number of events before triggering (non-overlapping) | 
| Sliding | Processes a fixed number of events with overlap | 
- Windows will not fire until a batch is complete
 - No option to timeout / process a partial window (except with a custom trigger)
 
Globalâ
- Assigns every event with the same key to the same global window
 - Useful for custom windowing, with a custom Trigger
 
NOTE
Apache flink suggests to use ProcessFunction instead