2.6倍!WhaleTunnel 客户POC实景对弈DataX

news2024/12/23 16:06:15

file

作为阿里早期的开源产品,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测试配置截图:

file

那么测试结果如何呢?

这是WhaleTunnel同步的性能速率:

file

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

file

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

file

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

file

可以看到,在这个场景下,因为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感兴趣,可扫描下方二维码沟通咨询。

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1793831.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java面试——专业技能

优质博文:IT-BLOG-CN 一、简单讲下 Java 的跨平台原理 由于各个操作系统(Windows,Linux等)支持的指令集不是完全一致的。就会让我们程序在不同的操作系统上要执行不同的程序代码。Java 开发了适用于不同操作系统及位数的 Java 虚拟…

Python对获取数据的举例说明

当使用Python来获取数据时,有许多不同的方法和库可以根据你的需求来选择。以下是一些常见的示例,说明如何使用Python来从各种来源获取数据。 1. 从网站或API获取JSON数据 你可以使用requests库从网站或API获取JSON格式的数据。例如,从某个API…

C++ | Leetcode C++题解之第128题最长连续序列

题目&#xff1a; 题解&#xff1a; class Solution { public:int longestConsecutive(vector<int>& nums) {unordered_set<int> num_set;for (const int& num : nums) {num_set.insert(num);}int longestStreak 0;for (const int& num : num_set) {…

accelerate 笔记:对齐不同设备配置的性能

在TPU、多GPU和单GPU上使用accelerate运行相同的脚本和相同的batch_size&#xff0c;可能结果是不一样的那应该怎么做呢? 1 设置正确的种子 确保在所有分布式情况下使用 utils.set_seed() 完全设置种子&#xff0c;以使训练可复现 from accelerate.utils import set_seedse…

【C++进阶】深入STL之string:模拟实现走进C++字符串的世界

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ ⏩收录专栏⏪&#xff1a;C “ 登神长阶 ” &#x1f921;往期回顾&#x1f921;&#xff1a;C模板入门 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀STL之string &#x1f4d2;1. string…

男士什么牌子的内裤穿着舒服?五款实力派男士内裤分享

你是否曾因为内裤不透气、材质不佳而倍感烦恼&#xff1f;男士内裤作为贴身衣物&#xff0c;其舒适度和质量至关重要。在如今市场上品牌众多、材质各异的背景下&#xff0c;如何挑选一款合适的男士内裤成为了一大难题。 以下是测评过的部分男士内裤&#xff1a; 近期&#xff…

ArUco与AprilTag 标签

一、简介 在许多计算机视觉应用程序中&#xff0c;姿势估计非常重要&#xff1a;机器人导航&#xff0c;增强现实等等。 该过程基于发现真实环境中的点与其2d图像投影之间的对应关系。 这通常是一个困难的步骤&#xff0c;因此通常使用合成或基准标记来简化操作。 最受流行的…

20240606在Toybrick的TB-RK3588开发板的Android12下确认HDMI的驱动

20240606在Toybrick的TB-RK3588开发板的Android12下确认HDMI的驱动 2024/6/6 9:48 【原文是在RK3328的Android7.1下写的。我将它升级成为RK3588的Android12了】 RK平台主要采用 FB 和 DRM 两种显示框架。与此相对应&#xff0c; HDMI 也有两套驱动。 FB&#xff1a; LINUX 3.10…

技巧:合并ZIP分卷压缩包

如果ZIP压缩文件文件体积过大&#xff0c;大家可能会选择“分卷压缩”来压缩ZIP文件&#xff0c;那么&#xff0c;如何合并zip分卷压缩包呢&#xff1f;今天我们分享两个ZIP分卷压缩包合并的方法给大家。 方法一&#xff1a; 我们可以将分卷压缩包&#xff0c;通过解压的方式…

【CentOS 7】挑战探索:在CentOS 7上实现Python 3.9的完美部署指南

【CentOS 7】挑战探索&#xff1a;在CentOS 7上实现Python 3.9的完美部署指南 大家好 我是寸铁&#x1f44a; 总结了一篇【CentOS 7】挑战探索&#xff1a;在CentOS 7上实现Python 3.9的完美部署指南详细步骤✨ 喜欢的小伙伴可以点点关注 &#x1f49d; 前言 此篇教程只适用于p…

linux网络 dns域名解析

目录 DNS 域名体系结构 如何实现域名解析 正向解析 反向解析 主从服务器解析 bond 网卡 DNS 是域名系统的简称 域名和ip地址之间的映射关系 互联网中 IP地址是通信的唯一标识 逻辑地址 访问网站 域名 IP地址不好记 域名朗朗上口 好记 域名解析的目的就是为了实现 访…

搭建高可用k8s

高可用只针对于api-server&#xff0c;需要用到nginx keepalived&#xff0c;nginx提供4层负载&#xff0c;keepalived提供vip(虚拟IP) 系统采用openEuler 22.03 LTS 1. 前期准备 因为机器内存只有16G&#xff0c;所有我采用3master 1node 1.1 修改主机配置&#xff08;所有节…

fpga入门 串口定时1秒发送1字节

一、 程序说明 FPGA通过串口定时发送数据&#xff0c;每秒发送1字节&#xff0c;数据不断自增 参考小梅哥教程 二、 uart_tx.v timescale 1ns / 1psmodule uart_tx(input wire sclk,input wire rst_n,output reg uart_tx);parameter …

栈与队列的相互实现

文章目录 前言一、用队列实现栈二、用栈实现队列总结 梦想不是别人给你的目标&#xff0c;靠自己的意志去实现的才是梦想… ——《食梦者》 前言 嗨喽喽&#xff01;大家好哇。欢迎小伙伴们来到我的博客&#xff01;&#xff01; 在前面已经分享了栈与队列两种数据结构的特点…

进程和计划任务以及步骤

进程 进程和程序有关&#xff0c;把该文件放到内存里&#xff0c;进程是动态的&#xff0c;不同时刻的状态不一样 内存&#xff1a;放置正在运行的程序和所需数据的位置 程序启动 ——》将相关文件和数据放到内存里 ——》进程&#xff08;processes&#xff09; 进程相关命令 …

easyexcel动态表头导出

动态表头导出excel 红框固定&#xff0c;绿框动态 引入依赖 <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.1.1</version></dependency>工具类 import com.alibaba.excel.util…

0.2 模拟电视简介

0.2 模拟电视简介 模拟电视指从图像信号的产生、传输、处理到接收机的复原&#xff0c;整个过程几乎都是在模拟体制下完成的电视系统或电视设备。模拟电视使用模拟信号传输图像和音频&#xff0c;模拟信号的幅度、相位和频率分别表示图像的亮度、颜色和声音。模拟电视的优点&a…

jmeter -n -t 使用非GUI模式运行脚本说明

命令模式下执行jmx文件 jmeter -n -t fatie.jmx -l results\t4.jtl -e -o results\h1 表示以命令行模式运行当前目录下的脚本fatie.jmx,将结果存入当前目录下的results\t1.jtl,并且生成html格式的报告&#xff0c;写入文件夹results\h1。 说明&#xff1a;生成结果的文件夹r…

在离线单机或内网环境中快速安装Visual Studio 2022并还原用户设定

20240606 By wdhuag 目录 前言 参考&#xff1a; 在外网环境下载离线安装包 1、在已安装好VS的电脑上用Visual Studio Installer导出配置.vsconfig 2、下载在线安装包VisualStudioSetup_Enterprise_2022.exe到D:\VisualStudio\ 3、使用cmd定位到VisualStudioSetup_Enter…

MySQL深分页,limit 100000,10 优化

文章目录 一、limit深分页为什么会变慢二、优化方案2.1 通过子查询优化&#xff08;覆盖索引&#xff09;回顾B树结构覆盖索引把条件转移到主键索引树 2.2 INNER JOIN 延迟关联2.3 标签记录法&#xff08;要求id是有序的&#xff09;2.4 使用between...and... 我们日常做分页需…