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会失效的,用参数的方式传入!

相关推荐
humors22118 小时前
韩秀云老师谈买黄金
大数据·程序人生
重生之绝世牛码18 小时前
Linux软件安装 —— SSH免密登录
大数据·linux·运维·ssh·软件安装·免密登录
StarChainTech18 小时前
无人机租赁平台:开启智能租赁新时代
大数据·人工智能·微信小程序·小程序·无人机·软件需求
Hello.Reader18 小时前
Flink DynamoDB Connector 用 Streams 做 CDC,用 BatchWriteItem 高吞吐写回
大数据·python·flink
早日退休!!!18 小时前
内存泄露(Memory Leak)核心原理与工程实践报告
大数据·网络
发哥来了19 小时前
主流AI视频生成工具商用化能力评测:五大关键维度对比分析
大数据·人工智能·音视频
無森~19 小时前
MapReduce
大数据·mapreduce
重生之绝世牛码19 小时前
Linux软件安装 —— zookeeper集群安装
大数据·linux·运维·服务器·zookeeper·软件安装
!chen19 小时前
大数据技术领域发展与Spark的性能优化
大数据·性能优化·spark
重生之绝世牛码20 小时前
Linux软件安装 —— kafka集群安装(SASL密码验证)
大数据·linux·运维·服务器·分布式·kafka·软件安装