Flink cdc如何只进行增量同步,不同步历史数据(只读取binlog)

环境

flink: 1.15.3

flink-connector-mysql-cdc: 2.4.0

场景:

mysql cdc到starrocks,

目前线上环境以及有老的任务在同步,现在升级了任务(旧checkpoints无法使用)旧表里面数据特别大,不方便重新同步

方案

思考:表里面的旧数据放着不动,只从binlog同步最新的数据。

解决

https://nightlies.apache.org/flink/flink-cdc-docs-master/zh/docs/connectors/mysql/

这是官网的解决办法,但是没有说参数设置在哪里。起初设置到debeziumProperties()里面是不生效的。

其实MySqlSourceBuilder是有一个方法特意指定startUP mode的

java 复制代码
MySqlSourceBuilder<String> builder = new MySqlSourceBuilder<>();

if (StringUtils.isNotBlank(latestOffset)){
     // 从最新的binlog同步
      builder.startupOptions(StartupOptions.latest());
 }

这样就可以了,重启任务不会读取历史数据。

最后(注意!!!)

执行过后请停止任务从最新的checkpoints恢复,或者记录好checkpoints。否则下次仍然指定这种模式会丢失数据的,还有指定了这个模式不要写死,否则checkpoints会失效的,用参数的方式传入!

相关推荐
ZKNOW甄知科技1 天前
重构企业运维智慧:低代码 ITSM 知识管理平台的创新与实践
大数据·运维·人工智能·程序人生·低代码·重构·it
AllData公司负责人1 天前
云原生数据平台(cloudeon)--核心服务组件扩展
大数据·云原生·架构·开源
老罗-Mason1 天前
Apache Flink运行环境搭建
python·flink·apache
武子康1 天前
大数据-153 Apache Druid 实时接入 Kafka:从摄取到查询的完整实战
大数据·后端·nosql
快乐非自愿1 天前
数智化时代:AI技术重构企业财务管理系统的底层逻辑与实践
大数据·人工智能·低代码
zskj_zhyl1 天前
解构智慧养老:当科技成为银发族的“隐形守护者”
大数据·人工智能·科技·物联网
芝麻开门-新起点1 天前
利用ArcPy批量检查管线隐患点与周边设施距离的实现方案
大数据
卡索(CASO)汽车调查1 天前
卡索(CASO)汽车调查:数据智能时代,汽车产业竞争格局与战略升维路径探析
大数据·人工智能·汽车·神秘顾客·汽车密采·神秘人·汽车研究
Blossom.1181 天前
大模型知识蒸馏实战:从Qwen-72B到Qwen-7B的压缩艺术
大数据·人工智能·python·深度学习·算法·机器学习·pygame