首页 > 数据库 > 数据库开发技术 > Flink CDC 3.1.0,从不让人失望
继前两次测试了 Flink CDC 的 3.0.0,以及 3.0.1 之后,就在上周,Flink CDC 又推出了它最新的 3.1.0 版本。

从官方发布的消息来看,各种老功能的增强,以及新功能的加入,外加各种振奋人心的消息席卷而来。
但作为使用者,看完热闹之后,我其实更关心新的版本,到底能给我的项目带来多少便利,以及之前遗留的老问题,解决了吗?
还记得上次测试 3.0.1 时留下的槽点为:
槽点1:说好的可以兼容 Flink 1.15,但实测不行;
槽点2:可以用 on yarn 模式运行,但只能同步历史数据,增量变化数据感知不到。
带着好奇心,同时怀揣着疑问,这次我又开启了新一轮对 Flink CDC 3.1.0 的实测之旅。
(友情提示:心脏不好的同学,就别看了,否则后果自负。)
0. 软件准备
0.1 官网内容
官网就先不读了,毕竟前两次在测试 3.0.0 跟 3.0.1 时,官网内容都快翻烂了,更何况从内容上来看,没有什么明显变化。
0.2 软件变化
首先,从下载的软件包大小来看,新的 3.1.0 比之前的两个版本都要大一些:

压缩包大小是之前版本的近6倍。
而这个大,主要体现在它的核心 jar 包上。

其他目录结构,几乎没有任何变化。

0.3 支持的 connector 多了2个

3.1.0 支持的 connector

3.0.1 支持的 connector
从提供的可下载 connector 种类来看,它多了 Kafka 跟 Paimon 2个 pipeline connector。
1. 环境准备
Flink CDC 需要依赖 Flink 环境,同时,这次测试,我还是准备以 on yarn 的方式运行,而对于这两者的配置方式,跟上次测试 3.0.1 是一毛一样的。
这里不再赘述。
同样,因为官网明确说了支持 Flink 1.15,这里就还是从它开始测起。
2. 测试过程
保持跟上一次测试 3.0.1 和 3.0.0 的测试方式一样,都是从 MySQL8 同步数据到 Doris2.x(也是官网给的测试样例)。
所以,这里需要下载好对应的 pipeline connector 到 FLINK_CDC_HOME/lib/ 目录下。

同样,测试过程也跟上次一毛一样,有兴趣的同学参考上次的测试文章:
3. 测试结果
说出来,可能会颠覆你的想象,因为这次测试,还没开始,就宣布结束了。
来,告诉你为什么?
前面的 Flink 环境、hadoop 环境,相关配置,以及 yarn-session 进程都已经全部准备妥当。
这接下来就该启动 CDC 任务了(MySQL8 数据同步到 Doris2),好嘛,就在这一步,直接宣布 game over。

居然说找不到 MySQL 的驱动类。
我就在想,莫非是当前新的 CDC 3.1.0 的 MySQL connector 里面没有包含这个类?

一匹配,果然没有:

为了确保我眼睛没有看花,立刻,我就用 CDC 3.0.1 启动了一个一毛一样的任务。
结果你猜怎么着?人家就可以。

注意,这个时候,Flink CDC 3.1.0 跟3.0.1依赖的 Flink、hadoop,以及 yarn-session 都是一样的。
再进一步检查 3.0.1 的依赖 jar 包发现,人家的 MySQL connector 是明确包含有 mysql 驱动类的。

这个时候,有同学可能会怀疑我 3.1.0 下载的 MySQL connector 是不是不对,如果我告诉你,我下载了3次都是这个结果,你信吗?
在测试的第一步就宣布游戏结束,这点着实让我没能想到,不过也挺好,省得我浪费时间。
设计这个 connector 的同学,谢谢你哈。
最后
本来以为是个王者,没想到是块废铁,上来就给你浇盆冷水(当然,也可能是我个人水平不行导致)。
好了,就这样吧,在让人失望这方面,Flink CDC 3.x 确实从不让人失望。
期待下一次更(gèng)新的幺蛾子出现。

原文作者:安瑞哥是码农;如有侵权,请联系管理员删除。