@[toc]
数据处理 、大数据、数据抽取 ETL 工具 DataX 、Kettle、Sqoop
1、DataX
2、Kettle
Kettle 一个开源的 ETL 工具,后面改名为 Pentaho Data Integration (但是国内仍然喜欢叫 Kettle)
参考 https://baike.baidu.com/item/Kettle/5920713?fr=aladdin
1、以 Java 开发,支持跨平台运行
2、支持 100% 无编码、拖拽方式开发ETL数据管道
3、可对接包括传统数据库、文件、大数据平台、接口、流数据等数据源
4、支持ETL数据管道加入机器学习算法
3、Sqoop
简介
Sqoop 产生背景是因为大多数使用 Hadoop 技术处理大数据的企业,数据大部分存储在关系型数据库里面,但是关系型数据库到 Hadoop 的数据传输因为没有工具支持
所以就变得比较困难,然后才产生了 Sqoop。 Sqoop 是连接关系型数据库和 Hadoop 的桥梁
Sqoop 的主要功能是把数据从关系型数据库导入到 Hadoop 或者相关的数据库中,如 Hive 、Hbase
4、DataX 和 Kettle 的对比
DataX 特点
易用性:没有界面,以执行脚本方式运行,对使用人员技术要求较高。(可以引入官网的提供的datax-web)
性能:数据抽取性能高。
部署:可独立部署
适用场景:在异构数据库/文件系统之间高速交换数据。
Kettle 特点
易用性:有可视化设计器进行可视化操作,使用简单。
功能强大:不仅能进行数据传输,能同时进行数据清洗转换等操作。
支持多种源:支持各种数据库、FTP、文件、rest接口、hdfs、Hive等源。
部署方便:独立部署,不依赖第三方产品
适用场景:数据量及增量不大,业务规则变化较快,要求可视化操作,对技术人员的技术门槛要求低。
DataX Kettle
----------------------------------------------------------------
MySQL AS/400
Oracle Apache Derby
SQLServer Cloudera Impala
DRDS ExtenDB
ODPS Firebird SQL
ADS Generic database
Hbase Google BigQuery
MongoDB H2
Hive Hadoop Hive
FTP Hadoop Hive 2
HDFS MySQL
Elasticsearch Oracle
OpenTSDB SparkSQL
TSDB Sybase
虽然 Kettle 支持的数据源更多,但是 DataX 支持的数据源更加主流
DataX 适合做数据同步工作,kettle 适合数据清洗,转换工作
DataX 对于数据库压力比较小,全量读取速度优于kettle ,有 3 倍左右的差距
DataX 原生不支持增量同步,需要自己改进