Flink Checkpoint 配置需根据业务对数据一致性与服务可用性的偏好进行选择,有两种典型策略:
策略 A:标准一致性优先(通用场景)
SET 'execution.checkpointing.interval' = '60s';
SET 'execution.checkpointing.mode' = 'EXACTLY_ONCE';
SET 'execution.checkpointing.timeout' = '10min';
适用于计费、审计等对数据准确性有严格要求的场景。需要对齐 Barrier,开销中等。
策略 B:高可用优化(超大规模监控)
SET 'execution.checkpointing.interval' = '180s';
SET 'execution.checkpointing.mode' = 'AT_LEAST_ONCE';
SET 'execution.checkpointing.timeout' = '15min';
SET 'execution.checkpointing.tolerable-failed-checkpoints' = '10';
适用于超高并发且对可用性极度敏感的监控场景。采用弱一致性 + 低频打点 + 允许失败的组合策略,避免 Checkpoint 过于频繁导致的性能抖动,不因 CP 失败重启作业。适合实时大屏和趋势分析场景。