博客园 首页 私信博主 显示目录 隐藏目录 管理 动画

DataX 与 Sqoop 的对比

Sqoop主要特点

1、可以将关系型数据库中的数据导入 hdfs、hive 或者 hbase 等 hadoop 组件中,
也可将 hadoop 组件中的数据导入到关系型数据库中;
2、sqoop 在导入导出数据时,充分采用了 map-reduce 计算框架,
根据输入条件生成一个 map-reduce 作业,在 hadoop 集群中运行。 采用 map-reduce 框架同时在多个节点进行 import 或者 export 操作,
速度比单节点运行多个并行导入导出效率高,同时提供了良好的并发性和容错性;
3、支持 insertupdate 模式,可以选择参数,若内容存在就更新,若不存在就插入; 4、对国外的主流关系型数据库支持性更好。

 

Datax主要特点:

1、异构数据库 和 文件系统 之间的数据交换;
2、采用 Framework + plugin 架构构建,
Framework 处理了缓冲,流控,并发,上下文加载
等高速数据交换的大部分技术问题,提供了简单的接口与插件交互,
插件仅需实现对数据处理系统的访问;
3、数据传输过程在单进程内完成,全内存操作,不读写磁盘,也没有 IPC;
4、开放式的框架,开发者可以在极短的时间开发一个新插件
以快速支持新的数据库/文件系统。

Sqoop 和 Datax的区别:

复制代码
1、sqoop 采用 map-reduce 计算框架进行导入导出,
而 datax 仅仅在运行 datax 的单台机器上进行数据的抽取和加载,
速度比 sqoop 慢了许多;
2、sqoop 只可以在关系型数据库和 hadoop 组件之间进行数据迁移,
而在 hadoop 相关组件之间,
比如 hive 和 hbase 之间就无法使用 sqoop 互相导入导出数据,
同时在关系型数据库之间,
比如 mysql 和 oracle 之间也无法通过 sqoop 导入导出数据。
datax 能够分别实现关系型数据库 hadoop 组件之间、关系型数据库之间、hadoop 组件之间的数据迁移;
3、sqoop 是专门为 hadoop 而生,对 hadoop 支持度好,
而 datax 可能会出现不支持高版本 hadoop 的现象;
4、sqoop 只支持官方提供的指定几种关系型数据库和 hadoop 组件之间的数据交换,
而在 datax 中,用户只需根据自身需求修改文件,
生成相应 rpm 包,自行安装之后就可以使用自己定制的插件;
复制代码

 

性能比较

1、mysql -> hdfs

在 mysql 中生成 50,000,000 条数据,将这些数据分别使用 datax 和 sqoop 导入到 hdfs 中,分别比较它们的性能参数:

sqoop:

属性
CPU时间(ms) 325500
读取物理内存快照大小(byte) 3045625856
读取虚拟内存快照大小(byte) 10975498240
平均速率(MB/s) 20.0809
总时间(s) 99.2047

5.DataX性能对比 - 图1

datax:

属性
CPU平均占用率(%) 21.99
平均速率(MB/s) 4.95
总时间(s) 202

5.DataX性能对比 - 图2

 


2、oracle -> hdfs

在 oracle 中生成 50,000,000条数据,将这些数据分别使用 datax 和 sqoop 导入到 hdfs 中,分别比较它们的性能参数:

sqoop:

属性
CPU时间 86510毫秒
读取物理内存快照大小 2865557504
读取虚拟内存快照大小 10937077760
平均速率 6.4137MB/s
总时间 94.9979s

5.DataX性能对比 - 图3

datax:

属性
CPU平均占用率 15.50%
平均速率 5.14MB/s
总时间 122s

5.DataX性能对比 - 图4

与 TDH 的兼容性

1、与 TDH 中的 hadoop 版本兼容,能够将关系型数据库中数据导入 TDH 中的 hdfs 中;

2、datax 拥有一个 sqoop 没有的功能,就是将数据从 hdfs 导入到 hbase,但是该功能目前仅仅支持的 hbase 版本为:0.94.x 和1.1.x 两个。

而 TDH 中 hyperbase 的 hbase 版本为 0.98.6,所以也不支持 TDH 的 Hyperbase。

 

 

拓展阅读

Datax和Kettle的对比_击水三千里的专栏-CSDN博客

 
posted @   CHANG_09  阅读(2836)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示