2023年12月, Flink Forward Asia 发布了新一代的端到端数据集成框架 Flink CDC 3.0,该版本采用了以 Flink 为基础的端到端流式 ELT 数据集成框架,支持将数据先导入到下游系统,然后在下游系统中进行加工。在该版本中,社区已支持实时同步 MySQL 数据至 StarRocks 的链路,用户可以利用 StarRocks 强大的预计算能力和物化视图等功能在 StarRocks 中完成高效的加工,大大简化数据同步链路。

基于 CDC 3.0 框架,社区开发了 StarRocks Pipeline Connector,将 StarRocks 作为下游系统与 CDC 进行了集成,具有以下功能:

可以根据源端的表结构在 StarRocks 中自动建表,大大降低用户建表的负担。

上游数据库的 schema 变更,比如加减列,可以自动同步到 StarRocks。

提供全量和增量的实时数据同步能力。

下面介绍两个典型的数据同步场景:

从 MySQL 到 StarRocks 的整库同步:将 MySQL 的 app_db 下所有的表分别同步到 StarRocks。首先通过 YAML 文件来描述 Pipeline 的逻辑,其中 source 配置 MySQL 的连接信息,通过 table 配置要同步的库。在 sink 部分,只需要配置 StarRocks 的基本连接信息。然后通过 Flink CDC 命令行提交 YAML 文件,就会生成一个 Flink 作业进行同步。在这个例子中,我们可以通过配置开启 StarRocks 3.2 的 fast schema evolution 功能,加速加减列的 schema 变更。

MySQL 的分库分表同步:将 MySQL 一个库下的多个表同步到 StarRocks 的一张表中。可以通过 YAML 文件的 route 部分来描述上下游表的映射关系。

从这两个例子可以看出,基于 CDC 框架,用户只需要简单地描述同步逻辑,而不需要关心具体的实现细节,非常方便。

StarRocks 社区也提供了快速上手的8分钟示例 Demo,大家可以通过本 Demo 了解 MySQL 与 StarRocks 数据实时同步的极简开发体验。

视频:https://www.bilibili.com/video/BV1k64y1K7Ud/?spm_id_from=333.1350.jump_directly

参考: https://docs.google.com/document/d/16bLqQJ-x9-GumUAE6biYYL5Hu-7NWvZecyH7QAD-9Ac/edit?pli=1

更多资讯,请关注 StarRocks 公众号:StarRockslabs

StarRocks 源码:https://github.com/StarRocks/starrocks (喜欢的话,Star 一个吧!)

技术交流:https://wx.focussend.com/weComLink/mobileQrCodeLink/33412/9c312

本文由 mdnice 多平台发布

相关链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。