Flink CDC这边使用flink-sql-connector-mysql-cdc 2.4.0.jar 和 flink-sql-connector-mongodb-1.0-1.16.jar,来完成mysql2mongodb的数据同步,flink job的cp时间间隔为10s?在任务同步的過程中,当mysql中 update了一条数据,mongo中立刻去查,会查不到(update之前可以查到),大约等了10s以后mongo就可以查到了,刚好是cp的时间,我这边flinksql中source和sink都按照文档说明,指定了主键。但是在mongo中有这么10s查不到数据,业务上是不可接受的。 有大佬知道这个是什么原因导致的吗?文档中说是是upsert 写mongo,按理说不会出现会查不到的情况
在您描述的情况中,MySQL中更新了一条数据后,MongoDB中大约10秒后才能看到更新,这很可能是由于Flink CDC的捕获和处理流程导致的。具体来说,可能涉及到以下几个因素:
为了解决这个问题,您可以尝试以下几种方法:
综上所述,导致数据同步延迟的原因可能是多方面的,需要综合考虑Flink CDC的工作流程、系统配置以及网络环境等因素。通过优化配置和调整策略,应该能够在一定程度上减少同步的延迟时间。如果问题依然存在,建议查阅Flink CDC的官方文档或寻求社区支持,以获取更专业的帮助。
延时等于cp是正常的,他同步需要时间,如果你想要快一点, 就把checpoint调小单线程执行的, 在mysql的binlog会有offset记录, 你不用担心顺序问题 ,此回答整理自钉群“Flink CDC 社区”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。