Flink CDC进行多表的数据 全量+增量 同步,测试发现表数量为23个时还能正常运行(有部分任务失败会自动重启成功),在往上(比如24,25,26张表)就不能成功了(有部分任务失败且自动重启也不成功)。报错日志如下。我提交任务的运行语句如下.:
./bin/flink run-application --target kubernetes-application -Dkubernetes.cluster-id=cluster231122ba -Dtaskmanager.network.memory.buffer-debloat.enabled=true -Dtaskmanager.network.memory.buffer-debloat.target=3s -Dtaskmanager.memory.process.size=7000m -Dtaskmanager.numberOfTaskSlots=1 -Dkubernetes.container.image.ref=swr.cn-north-4.myhuaweicloud.com/commons/toll_pro_02:1.17.1 -Dkubernetes.container.image.pull-secrets=regcred3 -Dkubernetes.namespace=flink -Dkubernetes.jobmanager.service-account=flink-service-account -Dkubernetes.rest-service.exposed.type=NodePort --pyModule ls_card_blacklist_28 --pyFiles /opt/python_codes/ls_card_blacklist_32.py?
从报错日志来看,问题可能出在任务数量过多导致的资源不足。当表的数量达到24、25、26张时,任务失败且自动重启也不成功。为了解决这个问题,你可以尝试以下方法:
增加Flink集群的资源,例如增加TaskManager的数量或者提高每个TaskManager的内存和CPU资源。
优化你的Flink CDC程序,减少任务数量。例如,你可以将多个表的数据合并到一个任务中进行同步,以减少任务数量。
调整Flink CDC的配置参数,例如增加taskmanager.numberOfTaskSlots
的值,以便为更多的任务分配资源。
检查你的数据库连接配置,确保可以正常连接到所有需要同步的表。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。