Flink CDC有同学碰到过删除已经同步的表之后再创建这张表时,历史数据不同步的问题么?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
是的,这是Flink CDC的一个已知问题。当表被删除并重创建时,Flink CDC无法恢复已经同步的数据。这是因为Flink CDC依赖于表的结构信息来解析数据,而当表被删除并重创建时,表的结构信息会发生改变,导致Flink CDC无法正确解析数据。
目前,解决这个问题的一种方法是使用Flink CDC的"recovery mode"。在"recovery mode"下,Flink CDC会尝试从旧表中恢复数据,然后再从新表中同步数据。但是,这种方法并不能保证能够完全恢复所有的数据,特别是对于那些在旧表中被删除的数据。
另一种可能的解决方案是使用Flink CDC的"incremental mode"。在"incremental mode"下,Flink CDC只会同步自上次同步以来发生的数据变化。但是,这种方法需要你确保你的数据在表被删除和重创建期间没有发生变化,否则可能会导致数据的不一致。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。