首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >装机实测|Doris 数据同步工具 NineData 社区版

装机实测|Doris 数据同步工具 NineData 社区版

作者头像
苏奕嘉
发布2025-07-14 18:39:56
发布2025-07-14 18:39:56
48200
代码可运行
举报
运行总次数:0
代码可运行

引言

市面上同步 TP 库或者其他组件数据至 Doris 的组件众多,社区开源的诸如 FlinkCDC、SeaTunnel、DataX、TIS等管道工具,Dinky、StreamPark 等 Flink 流式开发管理平台,在市场上都拥有巨大的声量和装机量。

但是很多同学反馈,在实际开发过程中,负责数据同步任务的同学无比希望有一款拥有可视化配置页面,通过简单的方式就可以完成数据同步任务的开发工作

巧合的是,在周末 WiFi 冲浪闲逛的时候,突然发现一款之前商业版的数据管道工具软件 —— NineData 要发布免费的社区版本了,而且 Doris 首当其冲,这不得火速来一波体验,看看效果具体如何?

走你~

NineData 介绍

以下是官网对 NineData 管道工具的定位和介绍。

NineData 是集成了数据库 DevOps、数据复制、数据备份、数据对比多个模块的云服务,支持混合云(自建库+云数据库的业务架构)和多云(多个不同云厂商数据库组成的业务架构)架构下的企业数据管理,大幅降低企业的数据运维难度和成本。

简单而言,就是为了满足各类环境的数据同步诉求的一款工具,支持全量同步、增量同步、DDL同步等日常数据同步任务的开发,最主要的是深度支持 Doris 和 SelectDB 的数据源!

安装部署

社区版本当前采用 Docker 单镜像一键安装方式,使用比较方便,只需前置安装好Docker环境,一行命令即可完成拉起:

代码语言:javascript
代码运行次数:0
运行
复制
docker run --net=host --privileged -v /data/ninedata:/u01 --name ninedata -d  swr.cn-east-3.myhuaweicloud.com/ninedata/ninedata:latest

镜像已经上传到 Docker Hub 和国内的华为云阿里云 Docker 镜像仓库中,可以直接拉取。

图片
图片

我们可以使用 Docker logs 命令来观察启动进度,一般首次部署启动,大概需要10分钟左右的时间,可以耐心等待一会

图片
图片

当日志页面刷新出 NineData 的 Logo 时,即表示安装部署完成,可以通过浏览器端口来访问整个服务

图片
图片

功能预览

浏览器控制台端口:http://localhost:30081

初始账号和密码:admin/admin

图片
图片

创建管理数据源

图片
图片

点击创建数据源即可开始配置上下游数据源

图片
图片

这里可根据自己的环境来配置,这里选择 Doris

图片
图片

测试通过以后保存即可,同样,我们需要再创建一个 OLTP 库作为我们测试的数据源库,这里我们选择 MySQL

图片
图片

创建复制任务

创建数据同步任务,从 MySQL 到 Doris

图片
图片

但这里需要注意的是,社区版本对增量复制的限制还是比较明显的,数据源级别的整库同步,社区版本只支持2个槽,对小公司而言,在小型项目上这个是够用了,但是如果是上游数据源较多,同步任务复杂的场景,可能还是得看看 NineData 的商业版本了。

全量同步任务,非增量形式的,可支持10个任务槽。

无论怎样,我们先看看同步任务的速率如何。

同步任务

上游 MySQL 源,使用 sysbench 工具对 MySQL 库生成了一批测试库表和数据。

图片
图片

一共模拟生成50张表,每张表100万行数据,共计5千万数据。

创建执行任务,选择**"保留结构并清空数据,再覆盖写入"**

选择 sysbench_test 整库,点击中间的 > 箭头同步至目标库

图片
图片

根据需要做预检查和调整

图片
图片

检查成功后,开启数据一致性对比,保证数据完整性

图片
图片

启动任务

图片
图片

速率结论

图片
图片

从截图可以看到,单批次生成了5个并行表结构同步任务进行执行,但是每个批次之间有时间重叠部分,第一批次同步500万行数据是从 15:17:58-59 开始,至 15:18:28-31 结束,不算第二批次重叠同步部分,意味着大概30s左右同步了500w条数据

从完整数据任务执行速度来看,5千万数据全量同步开始最早时间是 15:17:58

图片
图片

结束最迟时间是 15:24:13,共计消耗时间 6分15秒换算速率大约是 158730条/s

本地服务器的硬盘都是 HDD 的,网络带宽是千兆网卡,相较于大部分的生产环境而言,这个配置都显著偏低了,因为大部分的生产环境网络要求最起码是万兆网卡。

实时同步

图片
图片

全量复制同步后,即可同步的开启增量复制任务,即CDC式的同步任务,可以看到类似 FlinkCDC 的 CheckPoint 时间,在 NineData 中是一个动态变配的延迟值,平均看起来在5s以内,延迟已经非常不错了。

由于时间关系和篇幅关系,这里就不再模拟持续加载 MySQL 数据执行同步的情况了,有兴趣的同学可以测测看~

小结

整个流程下来,给我最大的体感是 NineData 的部署易用性太高了,也就是我们常说的产品化程度很好。

窥一斑而知全豹,从产品打磨的完整程度而言,不愧的确是商业化的一款数据同步组件。

从部署、应用、演示、写文档,我都没有进行第二次重复,很顺利的就完成了实践和整篇的写作,这个给我的惊喜还是蛮大的。

首先我觉得 NineData 团队愿意进一步支持国内的免费市场,无论这是不是一个商业化考虑的行为,至少在用户角度是一件比较好的事情,有新的力量加入免费数据同步这个市场,会给更多的小型企业给出更多的选择空间

至于后续资源不够是选择升级还是更换组件,我觉得这都是视情况而定了,如果不想自己花精力维护管道工具,在试用了免费社区版以后,也会有自己的感受和决定,如果老板就是没钱,那切换其他完全开源组件也没问题。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-03-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Apache Doris 补习班 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 引言
  • NineData 介绍
  • 安装部署
  • 功能预览
    • 创建管理数据源
    • 创建复制任务
    • 同步任务
    • 速率结论
    • 实时同步
  • 小结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档