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

相关推荐
大大大大晴天️2 小时前
Hudi + StarRocks 查询加速:原理与实践
大数据·starrocks·hudi
夜郎king2 小时前
解决AI图文解析偏差:CodeBuddy多模型交叉校验+腾讯地图Skill经纬度定位实战
大数据·人工智能
智慧物业老杨2 小时前
物业费公共收益维修资金三类资金分账的合规管控
大数据·人工智能·物联网
不动明王19842 小时前
Presto 查询引擎内核详解:Worker 本地执行模型——从物理计划到可调度执行单元
大数据·presto·湖仓·查询引擎内核·pipeline执行
tkevinjd2 小时前
MiniCode 项目详解7:Memory 记忆系统
大数据·python·搜索引擎·llm·agent
流量猎手3 小时前
GitHub 使用说明
大数据·elasticsearch·github
中国搜索直付通4 小时前
防沉迷新规下的棋牌游戏生存术:从合规底线到用户体验升级
大数据·人工智能·游戏
志栋智能4 小时前
超自动化安全:提升安全服务满意度的隐形引擎
大数据·安全·自动化
BerrySen1784 小时前
一个Java项目改成AI流程后,最难的部分完全变了
java·大数据·人工智能·可观测性·大模型应用开发·工程思维
核数聚5 小时前
【赛迪专访核数聚】深耕数据治理,打通数据孤岛夯实 AI 发展根基
大数据·人工智能·算法