一、Sqoop主要特点:

1.可以将关系型数据库中的数据导入到hdfs,hive,hbase等hadoop组件中,也可以将hadoop组件中的数据导入到关系型数据库中;

2.sqoop在导入导出数据时,充分采用了map-reduce计算框架(默认map数为4),根据输入条件生成一个map-reduce作业(只有map,没有reduce),在hadoop集群中运行。采用map-reduce框架同时在多个节点进行import或者export操作,熟读比单节点运行多个并行效率高,同时提供了良好的并发性和容错性;

3.支持insert,update模式,可以选择参数,若内容存在就更新,若不存在就插入;

4.对国外主流关系型数据库支持性更好。

二、Datax 主要特点:
1、异构数据库和文件系统之间的数据交换;
2、采用 Framework + plugin 架构构建,Framework 处理了缓冲,流控,并发,上下文加载等高速数据交换的大部分技术问题,提供了简单的接口与插件交互,插件仅需实现对数据处理系统的访问;
3、数据传输过程在单进程(单进程多线程)内完成,全内存操作,不读写磁盘,也没有 IPC(进程之间的通信);
4、开放式的框架,开发者可以在极短的时间开发一个新插件以快速支持新的数据库/文件系统。
 
三、Kettle 主要特点:
1、kettle (数据抽取、清洗、转换、装载)是由 java 编写,可以在 Window、Linux、Unix 上运行。支持多数据源, 多种中间件的专业 ETL 工具。
2、支持图形化 GUI 设计界面,组件多样性,支持 http 请求,上手简单支持拖拽,支持 sql , 可以编写js ,可以编写一些 java 代码,然后以工作流的形式流转。如果没有冲突可以并行执行,并行开发。在工具内可以查看 读 写 修改 输出 更新 拒绝 错误 等 一些参数,快速定位和纠错。
 
四、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 包,自行安装之后就可以使用自己定制的插件;
 
五、Kettle 与 DataX 的区别:
1、Kettle 拥有自己的管理控制台,可以直接在客户端进行 etl 任务制定,不过是 CS 架构(服务器-客户机),而不支持 BS(浏览器-服务器)架构。DataX 并没有界面,界面完全需要自己开发,增加了很大工作量。
2、Kettle 可以与我们自己的工程进行集成,通过 JAVA 代码集成即可,可以在 java 中调用 kettle 的转换、执行、结束等动作,这个还是有意义的,而 DataX 是不支持的,DataX 是以执行脚本的方式运行任务的,当然完全吃透源码的情况下,应该也是可以调用的。
3、支持的数据库,都支持的比较齐全,kettle 支持的应该更多,DataX 是阿里开发,可以更好地支持阿里自身的数据库系列,如 ODPS、ADS 等
4、Kettle 已经加入 BI 组织 Pentaho,加入后 kettle 的开发粒度和被关注度更进一步提升
5、DataX 开源的支持粒度不高,关注度远没有 kettle 高,代码提交次数更是少的很。
 
六、Kettle 与 Sqoop 的区别
1、Kettle 中有两种脚本文件,transformation 和 job,transformation 完成针对数据的基础转换,job则完成整个工作流的控制;Sqoop 主要用于在 Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递
2、kettle 有图形化的操作界面,只需要描述你想做什么,而不是你想怎么做;sqoop 没有图形化界面,具体的数据流向需要手工配置。
3、kettle 底层使用多线程以提高效率;Sqoop 专为大数据批量传输设计,能够分割数据集并创建 Hadoop任务来处理每个区块。
4、kettle 可以利用 transformation 在数据传输过程中对数据的一些转换处理;Sqoop 只是一个用来将Hadoop 和关系型数据库中的数据相互转移的工具
5、kettle 数据的具体流向可以指定,可以是各种数据的存储工具;sqoop 只是完成 hdfs 到关系型数据库或者 关系型数据库到 hdfs 的数据传输,在传输的过程中保证传输数据的类型
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ETL工具Datax、sqoop、kettle 的区别的更多相关文章

  1. 【转】阿里出品的ETL工具dataX初体验

    原文链接:https://www.imooc.com/article/15640 来源:慕课网 我的毕设选择了大数据方向的题目.大数据的第一步就是要拿到足够的数据源.现实情况中我们需要的数据源分布在不 ...

  2. 【dataX】阿里开源ETL工具——dataX简单上手

    一.概述 1.是什么? DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL.Oracle.SqlServer.Postgre.HDFS.Hive.ADS.HBase. ...

  3. 阿里ETL工具datax学习(一)

    阿里云开源离线同步工具DataX3.0介绍 一. DataX3.0概览 ​ DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL.Oracle等).HDFS.Hive.Ma ...

  4. 开源作业调度工具实现开源的Datax、Sqoop、Kettle等ETL工具的作业批量自动化调度

    1.阿里开源软件:DataX DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL.Oracle等).HDFS.Hive.ODPS.HBase.FTP等各种异构数据源之间稳 ...

  5. 大数据之ETL工具Kettle的--1功能介绍

    Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行. 说白了就是,很有必要去理解一般ETL工具必备的特性和功能,这样才更好的掌握Kettle的使用. ...

  6. ETL工具的功能和kettle如何来提供这些功能

    不多说,直接上干货! 大家会有一个疑惑,本系列博客是Kettle,那怎么扯上ETL呢? Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行. 说白了 ...

  7. ETL工具对比

    ETL工具对比 Informatica Kettle 起源 1993年创立于 (美国加利福尼亚州)并于1999年4月在纳斯达克上市 2006年加入了开源BI组织  自2017年9月起,已被(日立集团下 ...

  8. 六种 主流ETL 工具的比较(DataPipeline,Kettle,Talend,Informatica,Datax ,Oracle Goldengate)

    六种 主流ETL 工具的比较(DataPipeline,Kettle,Talend,Informatica,Datax ,Oracle Goldengate) 比较维度\产品 DataPipeline ...

  9. etl工具,kettle实现了周期

    Kettle这是国外的来源ETL工具,纯java写.能Window.Linux.Unix在执行.绿色无需安装,稳定高效的数据提取. 业务模型: 在关系型数据库中有张非常大的数据存储表,被设计成奇偶库存 ...

随机推荐

  1. ServerlessBench 2.0:华为云联合上海交大发布Serverless基准测试平台

    摘要:华为云联合上海交大重磅推出ServerlessBench 2.0,为社区提供涵盖12类基准测试用例.新增5大类跨平台测试用例.4大类关键特性指标.且多平台兼容的Serverless开放基准测试集 ...

  2. 远见而明察近观若明火|Centos7.6环境基于Prometheus和Grafana结合钉钉机器人打造全时监控(预警)Docker容器服务系统

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_181 我们知道,奉行长期主义的网络公司,势必应在软件开发流程管理体系上具备规范意识,即代码提交有CR(CodeReview),功能 ...

  3. rsync 文件备份

    # rsync # 实现文件的备份. # 备份位置可以是当前主机,也可以是远程主机. # rsync实现了完全备份和增量备份 # 可以做到:1.将本地主机的文件复制到另一个位置(本地.远程). # 2 ...

  4. SQL中 Decode 和 Sign 语法的简单用法

    含义解释:decode(条件,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值) 该函数的含义如下:IF 条件=值1 THEN RETURN(翻译值1)ELSIF 条件=值2 THEN R ...

  5. Java学习(二)Dos

    打开CMD方式 开始+系统+命令提示符 WIN键+R 输入cmd 在任意的文件夹下面,按住SHIFT键+鼠标右键,在此处打开命令行窗口 在资源管理器的地址栏前面加上cmd 路径 常用Dos命令 #盘符 ...

  6. 一键到位「GitHub 热点速览 v.22.32」

    作者:HelloGitHub-小鱼干 上上周在 B 站观看了智能键盘--瀚文的制作过程,本周 GitHub 热榜上出现了它的软硬件开源项目 HelloWord-Keyboard,如果你的动手能力强不妨 ...

  7. 436. 寻找右区间--LeetCode_暴力

    来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/find-right-interval 著作权归领扣网络所有.商业转载请联系官方授权,非商业转载请注明出 ...

  8. 从C过渡到C++——换一个视角深入数组[初始化](1)

    从C过渡到C++--换一个视角深入数组[初始化](1) 目录 从C过渡到C++--换一个视角深入数组[初始化](1) 数组的初始化 从C入手 作用域 代码块作用域 文件作用域 原型作用域 函数作用域 ...

  9. React报错之Parameter 'props' implicitly has an 'any' type

    正文从这开始~ 总览 当我们没有为函数组件或者类组件的props声明类型,或忘记为React安装类型声明文件时,会产生"Parameter 'props' implicitly has an ...

  10. 【unity游戏入门】1 环境安装

    作者 罗芭Remoo 2021年9月24日 这一个系列随笔记录如何使用unity引擎从零开始开发游戏,软件版本均使用最新版本 有关unity的背景介绍可以通过unity官网https://unity. ...