Flink做checkpoint迟迟过不去的临时解决思路

当大促的时候,flink 任务在处理数据时由于数据倾斜或者数据量突然增大导致的checkpoint迟迟过不去,在这时候我们临时去改代码可能来不及,或者不允许,因为改代码可能会导致状态丢失。

这时候去配置【Tolerable Failed Checkpoints】,宽松配置,提高作业稳定性,配置成一个比较大的值比如:1百万。如下:

execution.checkpointing.tolerable-failed-checkpoints: 100000

改完该参数以后,前几个checkpoint任然可能过不去,但等失败几个批次以后慢慢会过去。因为如果改参数配置成0,每次checkpoint失败flink都会重新从上一个成功的checkpoint 的offset重新消费,进而导致恶性循环,迟迟过不去;如果配置比较大,虽然当前checkpoint失败,但是截止当前的offset继续消费,而不会重新从上一个成功的checkpoint 的offset重新消费。这样就可以慢慢缓冲过去。

该参数是Flink容错机制中的一个关键配置参数,它定义了‌允许连续失败的检查点的最大数量‌。当连续失败的检查点数量超过此阈值时,Flink作业将自动失败并停止运行。是Flink容错机制的"安全阀",它平衡了作业稳定性与数据一致性之间的权衡‌。该参数不是用来解决检查点失败问题的工具,而是用来‌防止问题恶化的防护机制‌。
切记这只能作为临时的解决方案,然后再去排查导致检查点失败的根本原因,当大促过去以后,上线新的方案,备任务起来并行运行一段时间,然后平滑的迁移到新的方案。然后重新配置改参数,一般我们生产改参数配置比较小(0或小于5的数字),严格配置,快速失败以保护数据一致性。

execution.checkpointing.tolerable-failed-checkpoints: 0

相关推荐
清晨00137 分钟前
工业生产实时数据获取方案-TDengine
大数据·时序数据库·tdengine
极创信息1 小时前
信创产品认证怎么做?信创产品测试认证的主要流程
java·大数据·数据库·金融·软件工程
Elastic 中国社区官方博客1 小时前
Elastic 和 Cursor 合作 加速 上下文工程 与 coding agents
大数据·人工智能·elasticsearch·搜索引擎·全文检索
lzhdim2 小时前
SQL 入门 12:SQL 视图:创建、修改与可更新视图
java·大数据·服务器·数据库·sql
科研前沿2 小时前
镜像孪生VS视频孪生核心技术产品核心优势
大数据·人工智能·算法·重构·空间计算
lizhihai_993 小时前
股市学习心得-六张分时保命图
大数据·人工智能·学习
渣渣盟3 小时前
Flink 流处理那些事儿:状态、时间与容错
大数据·flink
CS创新实验室4 小时前
CS实验室行业报告:生物医药与生物工程行业就业分析报告
大数据·人工智能·生物医药
无忧智库6 小时前
跨行业数据要素可信流通体系建设:打破信任壁垒的完整工程方法论(WORD)
大数据·人工智能
小王毕业啦6 小时前
2007-2024年 省级-农林牧渔总产值、农业总产值数据(xlsx)
大数据·人工智能·数据挖掘·数据分析·社科数据·实证分析·经管数据