2019独角兽企业重金招聘Python工程师标准>>>
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 代码。
学习曲线、易用性以及文档
Pentaho Kettle 和 Talend Open Studio 都是用户友好型工具。它们都拥有优秀的数据和数据库管理背景(JDBC,SQL,文件格式化,编程基础,等等),成为高产能的工具指日可待。Kettle 和 Talend 都提供图形化工具使工作更加简便快捷。这些工具可以帮助您迅速设计并测试出可靠的 ETL 流程。
Pentaho Kettle 学起来十分简单,但与 Talend 的产品相比功能略少。Talend Open Studio 更难掌握,但是一旦您熟悉的它的 IDE,您就可以享受到这个工具强大的灵活与效力。使用 Talend Open Studio 的一个要求是正确定义您要处理的数据的 schema,在这个工程中,它的 IDE 大有助益。而在这一点上,Kettle 限制更少,因此您可以更快地建立起流程来。而且定义元数据对 Talend 来说是一个重要的功能,因为这会帮助您在生产环境中做出更可靠的流程。
Talend Open Studio 和 Pentaho Kettle 都是用户友好型,拥有丰富文档和强大社区支持的产品。只不过 Talend Open Studio 需要您投入稍大的精力来熟悉。但是,一旦您入门了,您就可以享受到这个工具的强大和潜力。
可靠、成熟、技术支持
Talend 和 Pentaho 都有强大的社区支持,而且都是强大、知名的的企业。开源商务智能是不断发展,而实际使用中的应用程序正变得越来越相同。在这个背景下,Talend 和 Pentaho 都提供了它们的开源 ETL 工具,并得到了广泛地使用。它们在实际使用中发展,同商用软件一样以任务为功能实现的核心。
Talend 更专注于数据集成和数据管理解决方案(当然,现在还要加上 SOA),然而 Pentaho 主要集中于商务智能。Talend Open Studio 得到了 Talend 非常活跃地开发,而且该公司已经建立了一个丰富的数据集成生态系统,而 Kettle 是 Pentaho 的一个重要项目,只是比起 Talend 的产品,开发与扩展方面还稍逊一筹。
Pentaho 和 Talend 的解决方案都非常可靠,成熟,而且发展迅速。实际运用中两者实现的功能有所趋同。经由订阅您可以获得支持服务,也可以按照需求取得直接的咨询服务。
组件、技术与功能
Talend Open Studio 是基于 Eclipse 的 Java 工具。您在图形化编辑器中设计的流程可以使用 Java 语言编译。此时,您可以轻松地使用 Java 全部的生态系统Talend Open Studio 的组件种类和具有的功能非常丰富,既有通用工具,也有专用工具。在通用工具中,Talend 配备了一套 RDBMS 组件,通过它们您很快就可以掌握某个特定 DB 厂商的高级功能。您可以将用到的定义储存在多个不同的存储库(repository)中,从而在项目发展中使用这些定义。
Pentaho Data Integration (Kettle) 使用 Java (Swing)开发。Kettle 作为编译器对 XML 格式书写的流程进行编译。这些功能和组件比起 Talend 在丰富性方面稍逊一些,但是您建立复杂 ETL 流程需要的一切元素。Kettle 的 JavaScript 引擎(和 Java 引擎)可以深层地控制对数据的处理。
Talend 功能更加丰富,比起 Kettle 拥有更加灵活的技术特点。通过 Talend,您可以轻松地使用完整的 Java 生态和一些DB厂商提供的专用的DB功能。Kettle 工具也很优秀,同时更加专注于 ETL 功能。