开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

oracle cdc 和mysql cdc 全量同步,为啥是U,不应该是I吗?

04421ee130a0938cdf5948e57adf1c71.png

展开
收起
爱喝咖啡嘿 2023-01-03 14:19:31 170 0
1 条回答
写回答
取消 提交回答
  • 在 Oracle CDC 和 MySQL CDC 中,全量同步的变更类型通常为 U(更新),而不是 I(插入)。这是因为:

    对于 Oracle CDC:全量同步阶段涉及从源数据库中读取所有表数据并将其写入到 Kafka 主题中。由于这是一个一次性操作,因此所有记录都被视为更新(U),即使它们在源数据库中是新插入的。
    对于 MySQL CDC:全量同步阶段类似于 Oracle CDC,它涉及从源数据库中读取所有表数据并将其写入到 Kafka 主题中。然而,MySQL CDC 还支持“INSERT_ONLY”模式,在这种模式下,全量同步阶段只写入插入的记录(I)。但是,默认情况下,MySQL CDC 处于“FULL”模式,在这种模式下,全量同步阶段写入更新(U)和删除(D)记录。
    因此,在 Oracle CDC 和 MySQL CDC 中,全量同步的变更类型通常为 U,因为它代表了源数据库中所有记录的当前状态,包括新插入的记录。

    需要澄清的是,在增量同步阶段,新插入的记录确实会被标记为 I(插入),因为它们是源数据库中自上次全量同步以来新添加的记录。

    2024-02-27 17:46:52
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关电子书

更多
搭建电商项目架构连接MySQL 立即下载
搭建4层电商项目架构,实战连接MySQL 立即下载
PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

相关镜像