作为阿里早期的开源产品,DataX是一款非常优秀的数据集成工具,普遍被用于多个数据源之间的批量同步,包括类似Apache DolphinScheduler的Task类型也对DataX进行了适配和增强,可以直接在DolphinScheduler里面利用通用的数据源调用DataX进行数据批量同步。

作为DolphinScheduler的社区支持者和商业版本的提供者,白鲸开源在升级到商业版WhaleScheduler的时候也遇到使用DataX的用户,因为白鲸开源也在主力维护者另外一个Apache顶级社区 Apache SeaTunnel,它对应的商业版是WhaleTunnel。所以,经常有客户会询问,WhaleTunnel比DataX优势在哪里啊? 性能到底如何?今天这里用一个客户实际的POC案例来实景对弈下,以及最终用户为什么选择WhaleTunnel替换了开源的DataX。

功能差异

首先,从功能上,我们来对比下商业版WhaleTunnel和DataX的差异点。可以看到WhaleTunnel作为一个商业数据集成工具,不仅具备了Apache SeaTunnel开源的多线功能,还在数据源数量、可视化、DDL变更和运维监控方面都做了增强,对比DataX来讲,更是在集群稳定性、批流一体、数据源以及可视化上有明显优势:

对比项 WhaleTunnel(商业) DataX
部署难度 容易 容易
运行模式 分布式,也支持单机 单机
健壮的容错机制 无中心化的高可用架构设计,有完善的容错机制 易受网络闪断、数据源不稳定等因素影响
支持的数据源丰富度 支持批量和CDC 165种数据源: MySQL、PostgreSQL、Oracle、SQLServer、SAP Hana、Hive、S3、OSS】文件、RedShift、PolarDB
HBase、Doris、Clickhouse等实时和批量数据源还在快速增长
支持批量数据源:MySQL、ODPS、PostgreSQL、
Oracle、Hive 等 20+ 种批量数据源
商业版连接器 针对多种常见数据源,Doris、StarRocks、GaussDB、Redshift、偶数等单独与原厂共同定制开发底层商业版连接器,性能大幅超过开源版连接器 开源版连接器
内存资源占用
数据库连接占用 少(可以共享 JDBC 连接)
自动建表 支持 不支持
整库同步 支持 不支持
断点续传 支持 不支持
JDBC 连接池复用 支持
DDL变更支持 强,支持多种数据源DDL变更 不支持
可视化设计 支持完全可视化数据源管理、数据Mapping定义任务定义、运维监控、告警 不支持
多引擎支持 基于商业扩展的SeaTunnel Zeta引擎 只能运行在DataX自己的引擎上
数据转换算子(Transform) 支持Copy、Filter、Replace、Split、SQL 、自定义 UDF等算子。
商业专有Transform:添加列,改类型,删除列,改列名,Transform支持DDL变更适配,在DDL变更场景也支持Transform自适应。
支持补全,过滤等算子,可以 groovy自定义算子
单机性能 比DataX高30%-80% 较好
批量同步 支持 支持
增量同步 支持 支持
实时同步 支持 不支持
CDC同步 支持 不支持
批流一体 支持 不支持
精确一致性 所有JDBC访问的数据库(比如MySQL, SQLServer, PG, Oracle等)、Kafka、Hive、HDFS、File , SFTP, FTP等连接器支持 不支持
可扩展性 插件机制非常易扩展 易扩展
进度监控及统计信息 丰富的可视化监控,同步进度、速率,表同步情况,任务错误情况,同步条数等监控信息,DDL变更提醒、数据模型变更提醒等。 无监控界面,可以在DolphinScheduler级别实现任务级别的监控
告警 支持DDL变更告警,数据延迟告警,数据异常报警等 不支持
Web UI 全部可视化建立数据映射以及同步任务,并与商业版本调度WhaleScheduler集成,支持完全可视化数据源管理、任务定义、运维监控、告警等
与调度系统集成度 与商业版本调度WhaleScheduler深度集成,支持各种调度传参数用于同步,比如日历,牌等信息 已经与DolphinScheduler集成

性能差异

具体到性能方面,到底孰弱孰强,我们直接上用户具体测试的实际场景来看(这是在征求某零售客户许可后公布的测试POC数据内容,已混淆其中的各项业务相关内容):

测试内容:

  • 单表(80个字段,数千万条记录)
  • 源数据库:Oracle
  • 目标数据库:Apache Doris
  • WhaleTunnel与DataX并行度:10

    WhaleTunnel采用可视化界面配置,DataX采用WhaleScheduler中的DataX任务进行配置。

这是WhaleTunnel测试配置截图:

那么测试结果如何呢?

这是WhaleTunnel同步的性能速率:

这是同样配置服务下,单台DataX同步Insert的速率:

这是同样配置服务下,单台DataX同步upsert的速率:

可以看到,同样的数据,在同样的并行度情况下有如下测试结论:

可以看到,在这个场景下,因为WhaleTunnel在源连接器读取速度、商业引擎以及商业写入连接器方面都有大幅优化,在同样并行度的Insert场景下,速度是DataX的2.2倍;而Upsert场景下,WhaleTunnel速度是DataX的2.6倍。而这只是WhaleTunnel单台服务器的场景,WhaleTunnel还支持集群部署来提高并行度性能,同时WhaleTunnel集群还支持CDC实时数据同步,可以说功能上完全就是新一代的数据集成工具。

结论

综上,可以看到WhaleTunnel在开源版的Apache SeaTunnel之上增加了大量商业版功能,并对可视化开发、引擎、接口、Transform、DDL、运维监控做了大量优化和开发。而两者基于新一代数据集成引擎SeaTunnel Zeta,在批量同步、实时同步方面都是在行业当中的佼佼者。与DataX相比,WhaleTunnel更适用于多种场景、多数据源的数据同步,同时也可以帮助用户全面从DolphinScheduler+DataX的组合中平滑升级到WhaleScheduler+WhaleTunnel的新一代DataOps平台里,满足用户多云、混合云、多数据源的批量、CDC实时的数据集成工作需求。

如果对数据集成和同步工具商业版WhaleTunnel感兴趣,可扫描下方二维码沟通咨询。

本文由 白鲸开源 提供发布支持!

2.6倍!WhaleTunnel 客户POC实景对弈DataX的更多相关文章

  1. sqlserver实现数据库读写分离介绍

    对于负载均衡,笔者经常接触的当属Oracle的负载均衡机制.下面我们重点介绍Sql Server 2005是如何实现负载均衡的,感兴趣的朋友可以参考下哈 Internet的规模每一百天就会增长一倍,客 ...

  2. (转)Web性能优化方案

    第一章 打开网站慢现状分析 在公司访问部署在IDC机房的VIP网站时会感觉很慢.是什么原因造成的?为了缩短页面的响应时间,改进我们的用户体验,我们需要知道用户的时间花在等待什么东西上. 可以跟踪一下我 ...

  3. web 前端常用组件【05】ZTree

    web 项目或多或少都会有涉及到什么人员职称树,菜单树,组织机构树等. 历手三四个项目有大有小,采用的树前端都是 Ztree. 有些优秀的J2EE 框架将这些常用的组件都封装起来,作为模块化的组件提供 ...

  4. IIS中启用gzip压缩(网站优化)

    HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的技术.大流量的WEB站点常常使用GZIP压缩技术来让用户感受更快的速度.这一般是指WWW服务器中安装的一个功能,当有人来访问这个服务器中的 ...

  5. Web性能优化方案

    第一章 打开网站慢现状分析 在公司访问部署在IDC机房的VIP网站时会感觉很慢.是什么原因造成的?为了缩短页面的响应时间,改进我们的用户体验,我们需要知道用户的时间花在等待什么东西上. 可以跟踪一下我 ...

  6. GC参考手册 —— GC 调优(基础篇)

    GC调优(Tuning Garbage Collection)和其他性能调优是同样的原理.初学者可能会被 200 多个 GC参数弄得一头雾水, 然后随便调整几个来试试结果,又或者修改几行代码来测试.其 ...

  7. 配gzip的过滤器进行压缩解决表单加载慢问题

    一个客户的表单上字段超过五百,经浏览器的调试器发现主要问题是从服务器取数据花费了大量时间,下载内容大小约1.2M,下载时间在10s左右,导致样式加载完大约在17s左右(不清除浏览器缓存).最终考虑利用 ...

  8. web前端性能优化 (share)

    本文转自:http://www.cnblogs.com/50614090/archive/2011/08/19/2145620.html 一. WEB前台的优化规则 一.尽量减少 HTTP 请求 有几 ...

  9. web 新能优化

    网上的东西太多了都是搜来的东西 留着自己看吧! 摘自 :http://www.cnblogs.com/50614090/archive/2011/08/19/2145620.html 打开网站慢现状分 ...

  10. 阿里不允许使用 Executors 创建线程池!那怎么使用,怎么监控?

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 五常大米好吃! 哈哈哈,是不你总买五常大米,其实五常和榆树是挨着的,榆树大米也好吃, ...

随机推荐

  1. es创建索引及别名更新mapping方法 elasticsearch [nested] nested object under path [XXX] is not of nested type

    [nested] nested object under path [XXX] is not of nested type这是因为在创建索引时没有指定类型为数组,这就是一个大坑,ES官方说可以不用指定 ...

  2. Arduino实现温湿度传感器以及数据上传到云(乐维互联)

    0 准备材料 0.1 ESP-01S 引脚及定义 官方定义: 序号 pin 功能 1 GND 地线 2 IO0/GPIO0 工作模式选择:①悬空:Flash Boot,工作模式 ②下拉:UART Do ...

  3. C# .net core中如何将多张png图片合并成一个gif

    背景 我们有很多这样的序列帧: 我这边要把这些序列帧裁切最后合并成gif,以下是我裁切后的png文件: 我一开始选用的是 SixLabors.ImageSharp 这是裁切代码: using var ...

  4. Jupyter QtConsole 配置,2023 年了你还在使用 QtConsole 吗?

    目录 Jupyter QtConsole 配置,2023 年了你还在使用 QtConsole 吗? Jupyter QtConsole 的安装 设置字体 启动时自动加载需要的库包 更新:2023 年 ...

  5. Linux下Oracle11G数据备份恢复(RMAN)

    数据库安装参考步骤1--14 https://www.cnblogs.com/baixisuozai/p/17852235.html #rman数据库备份脚本 #!/bin/bash PATH=$PA ...

  6. BST-splay板子 - 维护一个分裂和合并的序列

    splay 均摊复杂度 \(O(\log n)\) 证明: https://www.cnblogs.com/Mr-Spade/p/9715203.html 我这个 splay 有两个哨兵节点,分别是1 ...

  7. 为ssh服务器添加2fa认证,一个python脚本全搞定

    服务器ssh如果被别人登陆就是一场灾难,所以我研究了ssh认证,我发现Google Authenticator PAM可以实现ssh的2fa认证,但是安装和配置比较麻烦.因此我用python实现了ss ...

  8. 【论文阅读】RAL 2022: Receding Moving Object Segmentation in 3D LiDAR Data Using Sparse 4D Convolutions

    参考与前言 Status: Finished Type: RAL Year: 2022 论文链接:https://www.ipb.uni-bonn.de/wp-content/papercite-da ...

  9. ROS让机器人开发更便捷,基于RK3568J+Debian系统发布!

    ROS系统是什么 ROS(Robot Operating System)是一个适用于机器人的开源的元操作系统.它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递,以 ...

  10. oeasy教您玩转vim - 29 - # 垂直翻页

    ​ 垂直翻页 回忆上节课内容 我们上次了解了横向滚动的相关信息 横滚幅度 - sidescroll 横滚留位 - sidescrolloff 自动换行 - wrap g j.g k 可以逐行上下移动 ...