开源ETL工具比较,Kettle和Talend,都有什么优势和劣势

开源ETL工具比较,Kettle和Talend,都有什么优势和劣势,第1张

Pentaho Data Integration (Kettle)是Pentaho生态系统中默认的ETL工具。通过非常直观的图形化编辑器(Spoon),您可以定义以XML格式储存的流程。在Kettle运行过程中,这些流程会以不同的方法编译。用到的工具包括命令行工具(Pan),小型服务器(Carte),数据库存储库(repository)(Kitchen)或者直接使用IDE(Spoon)。

Talend Open Studio是 Talend 开发的ETL工具——Talend 是一家主营数据集成和数据管理解决方案的企业。Talend 采用用户友好型,综合性很强的IDE(类似于Pentaho Kettle 的 Spoon)来设计不同的流程。这些流程可以在IDE内部测试并编译成Java 代码。您可以随时查看并编辑生成的Java代码,同时实现强大的控制力和灵活性。

两者都非常优秀,都属于用户友好型的交叉平台(基于Java的)工具。它们的主要差异在于Kettle 将 ELT 流程编译为 XML 格式,然而Talend Open Studio 则生成 Java 代码。

易用性:

Talend:有 GUI 图形界面但是以 Eclipse 的插件方式提供。

Kettle:有非常容易使用的 GUI,出现问题可以到社区咨询。

技术支持:

Talend:主要在美国

Kettle:在美国,欧洲(比利时,德国,法国,英国),亚洲(中国,日本,韩国)都可以找到相关技术支持人员。

部署:

Talend:创建 java 或perl 文件,并通过 *** 作系统调度工具来运行

Kettle:可以使用 job 作业方式或 *** 作系统调度,来执行一个转换文件或作业文件,也可以通过集群的方式在多台机器上部署。

速度:

Talend:需要手工调整,对特定数据源有优化知识。

Kettle:比 Talend 快,不过也需要手工调整,对 Oracle 和 PostGre 等数据源做了优化,同时也取决于转换任务的设计。

数据质量:

Talend:在 GUI 里有数据质量特性,可以手工写 SQL 语句。

Kettle:在 GUI 里有数据质量特性,可以手工写 SQL 语句、java脚本、正则表达式来完成数据清洗。

监控:

Talend:有监控和日志工具

Kettle:有监控和日志工具

连接性:

Talend:各种常用数据库,文件,web service。

Kettle:非常广泛的数据库,文件,另外可以通过插件扩展

一、离线数据同步

DataX

阿里的Datax是比较优秀的产品,基于python,提供各种数据村塾的读写插件,多线程执行,使用起来也很简单, *** 作简单通常只需要两步;

创建作业的配置文件(json格式配置reader,writer);

启动执行配置作业。

非常适合离线数据,增量数据可以使用一些编码的方式实现,

缺点:仅仅针对insert数据比较有效,update数据就不适合。缺乏对增量更新的内置支持,因为DataX的灵活架构,可以通过shell脚本等方式方便实现增量同步。

参考资料:

github地址:>

Kettle工具主要是由四个组件组成,分别是Spoon、Pan、Kitchen及Carte组件。

Kettle是一款国外开源的ETL工具,纯java编写,可以在Windows、Linux、Unix上运行,数据抽取高效稳定。Kettle中文名称叫水壶,该项目的主程序员MATT希望把各种数据放到一个壶里,然后以一种指定的格式流出。

PentahoDataIntegration以Java开发,支持跨平台运行,其特性包括:支持100%无编码、拖拽方式开发ETL数据管道;可对接包括传统数据库、文件、大数据平台、接口、流数据等数据源;支持ETL数据管道加入机器学习算法。PentahoDataIntegration分为商业版与开源版,开源版的截止2021年1月的累计下载量达836万,其中19%来自中国。在中国一般人仍习惯把PentahoDataIntegration的开源版称为Kettle。

Kettle是一款开源的ETL工具,可以用于数据抽取、转换和加载。下面是连接Oracle数据库的步骤:

下载并安装Oracle JDBC驱动,可以从Oracle官网下载。

启动Spoon,新建一个Trans。

点击左侧的Database,选择Oracle。

在连接Oracle数据库的页面,填写以下信息:

Host name: Oracle数据库所在的主机名或IP地址。

Port number: Oracle数据库的监听端口号,默认为1521。

Database name: 要连接的Oracle数据库名称。

User name: 连接Oracle数据库的用户名。

Password: 连接Oracle数据库的密码。

点击Test按钮,测试连接是否成功。

连接成功后,就可以在Trans中使用Oracle数据库了。

注意事项:

需要将Oracle JDBC驱动的jar包复制到Kettle的lib目录下。

在连接Oracle数据库时,需要保证Oracle数据库已经启动,并且监听程序也已经启动。

可以,kettle的功能还是比较强大的,看你怎么用了。具体咋弄,也不是太困难,摸索摸索你就知道嘞 用kettle做一些简单处理是可以的,比较复杂的就很蛋痛,最好在数据库中处理数据,尽量减少中间处理过程。

题主是否想询问“spoon转换不结束该怎么办”解决方案如下。

1、转换中的字段选择可对字段的编码做选择(此方法输出到excel可用)。

2、数据库输出设置编码—编辑—选项,然后添加characterEncoding参数,值为自己想要的编码格式即可。

3、整数输出变小数问题,格式0表示整数。

4、定时任务设置。

5、中文命名再次打开会乱码,避免中文命名。

6、转换-转换-中有增加常量,可用此添加常量。

7、分清输入输出字段,否则会发生字段错误。

以上就是关于开源ETL工具比较,Kettle和Talend,都有什么优势和劣势全部的内容,包括:开源ETL工具比较,Kettle和Talend,都有什么优势和劣势、大数据常用同步工具、kettle的转换由什么组成等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9326334.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存