Flink中一共有三种时间类型,分别为事件时间(Event Time)、摄取时间(Ingestion Time)、处理时间(Processing Time)。
根据不同的场景和要求,我们应该选择最合适的时间类型,以在实时性和准确性中实现一个平衡
根据Flink官网给出的图我们可以清晰的了解到这三种时间的发生顺序依次是事件时间,摄取时间,处理时间,以下表格是我整理的不同时间的定义,特点,以及应用场景。
分类 | 定义 | 特点 | 应用场景 | 例子 |
事件时间(Event Time) |
事件在数据源端实际发生的时间 | 1. 反映事件的真实发生顺序 2. 需要用户指定时间戳提取方式 3. 可能需要Watermark处理乱序和延迟数据 |
1. 金融交易记录分析 2. 日志处理 |