问题1:
请问flink cdc中这个ts_ms 好像不是数据实际入表的时间,是当前读取的时间吧?
问题2: 我咋感觉startupOptions只支持initail 跟 latest 啊?
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在 Flink CDC 中,如果使用 Debezium CDC 技术进行数据同步,那么 CDC 数据源会自动为每个记录添加一个名为 ts_ms 的字段,该字段表示记录在 CDC 数据源中读取的时间戳。这个时间戳并不是实际的数据入库时间,而是 CDC 数据源读取数据时的时间戳,也就是数据进入 Flink 程序的时间。
如果您需要获取数据实际入库的时间,需要根据具体情况从其他地方获取,例如,可以从 CDC 数据源中获取 binlog 中的 commit_timestamp 字段,该字段表示数据实际提交到数据库时的时间戳。不过需要注意的是,该字段并不是所有 CDC 数据源都支持,具体支持情况需要根据具体的 CDC 数据源来确定。
另外,如果您使用的是自定义的反序列化器,可以在其中添加对应的字段,来获取数据实际入库的时间。例如,您可以从 CDC 数据源的 binlog 中获取 co
"回答1:和这个属性有点关系。
回答2:用cdc2.3版本就可以了。如果是默认的,数据先select,op是r,当然source里面的是tm_ms时间是当前时间。如果你不走默认的,想看到明显的差异性,走最早启动或者binlog点位启动,或者binlog时间点启动,他昨晚想看到差异性,直接读最早的binlog即可。此回答整理至钉群“Flink CDC 社区”。"
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。