【IT168 评论】上一篇文章中,笔者整理了《现代ETL工具与传统解决方案清单附对比》,本期我们将为企业推出主流的开源ETL方案清单!
开源ETL工具俨然成为商用解决方案的低成本替代品。就像商业解决方案一样,它们也有其优点和缺点。如果没有时间或资源自定义ETL解决方案或者不能接受商用方案的购买成本,开源解决方案将是一个实用选择。
此外,开源ETL解决方案非常适合小型项目或非关键型数据分析任务。请记住,大多数开源ETL解决方案仍需要一些配置工作。因此,即使用了开源解决方案,也需要具备一些系统或编程专业知识。
开源ETL工具概述
开源ETL社区包括大量研发和测试人员,他们可以帮助改进和加速工具开发周期。有些人更喜欢只使用开源解决方案。当然,开源ETL产品最显着的特点就是通常比商用解决方案便宜得多。
采用开源ETL工具的四大基本人群:
1、寻求可嵌入数据集成工具的独立软件供应商(ISV)——降低成本并节省客户时间,ISV会将数据集成、迁移和转换能力作为一个嵌入式组件包装到产品中,与大型商业产品相比,终端产品的内存占用量减少;
2、寻求廉价集成工具的系统集成商(SI)——开源ETL软件使系统集成商能够以比定制构建功能更快,质量更高的水平交付集成能力;
3、寻求本地解决方案的企业部门开发人员——使用大型企业的免费ETL工具技术来支持较小的任务;
4、预算较小且需求复杂程度较低的中小型公司——小型公司更可能支持开源ETL提供商,因为它们对数据集成软件的需求不高。
尽管一些开源项目专注于单个ETL或数据集成功能(某些工具可能仅支持提取数据,其他工具可能仅用于移动数据),但许多开源项目都能够执行更多功能。
流行的开源ETL工具清单
这不是一份详尽的清单,但它确实涵盖了目前比较流行的主流产品。
Apache Airflow
Apache Airflow是一个自动编写、调度和提供工作流监控平台的项目。工作流被编写为任务的有向无环图(DAG),调度程序在工作数组上执行任务,并遵循指定的依赖关系。命令行实用程序允许用户在DAG上执行操作,并且用户界面允许可视化生产管道,监视进度并排除故障。
·开源版本功能没有限制
·开源地址:https://airflow.apache.org/
Apache Kafka
Apache Kafka是一个分布式流式传输平台,提供发布和订阅记录流(类似于消息队列),支持容错存储记录流,并允许在发生记录时处理记录流。
Kafka通常用于构建实时流式数据,可以在系统或应用程序之间移动数据,也可以转换或响应数据流。该项目的核心概念包括作为一个或多个服务器上的集群运行,拥有强大的记录流以及处理能力,其中每个记录包含键、值和时间戳。Kafka有四个核心API:生产者API,消费者API,流API和连接器API。
·开源版本功能没有限制
·开源地址:https://kafka.apache.org/
Apache NiFi
Apache NiFi项目用于自动化和管理系统之间的信息流,其设计模型让NiFi成为构建强大且可扩展数据流的有效平台。NiFi的基本设计概念与基于流程编程的核心思想相关,该项目的主要功能包括高度可配置的基于Web的用户界面(例如,动态优先级),多样数据来源,可扩展性和安全性(SSL,SSH,HTTPS等选项)。
·开源版本功能没有限制
·开源地址:https://nifi.apache.org/
CloverETL
CloverETL提供其引擎的开源社区版本。该引擎是一个Java库,不包含任何可视化或UI组件。但是,它确实包含对商业版本中使用的ETL /数据转换功能的访问。
CloverETL社区版为广大社区免费提供了基本数据转换功能的可视化工具,允许全速执行数据转换,但它包含相当有限的一组转换组件。
·开源版本功能有限
·开源地址:https://www.cloveretl.com/products/open-source
JasperSoft
Jaspersoft数据集成软件可提取、转换和加载来自不同数据源的数据到数据仓库或数据商店以进行报告和分析,社区版本以开源形式提供。
·开源版本功能有限制
·开源地址:https://www.jaspersoft.com/data-integration
KETL
根据其sourceforge网页介绍,KETL(tm)是一个生产就绪的ETL平台,其引擎基于开放的,多线程的XML体系结构。该产品旨在帮助开发和部署需要ETL和调度的数据集成工作,似乎是在2015年后开始更新。
·开源版本功能没有限制
·开源地址:https://sourceforge.net/projects/ketl/
Pentaho Kettle
Pentaho Kettle是Pentaho负责ETL操作的组件,它使用户能够从任何来源获取、混合、清理和准备数据。Pentaho还包含在线分析和可视化工具,社区版本是免费的,但提供的功能比付费版本少。
·开源版本功能有限制
·开源地址:https://community.hds.com/docs/DOC-1009855
Talend Open Studio
Talend提供Open Studio for Data Integration作为其数据管理平台有限开放(Apache许可证)版本。它为各种RDBMS,SaaS,打包应用程序和技术提供连接器。
·开源版本功能有限制
·开源地址:https://www.talend.com/products/data-integration/data-integration-open-studio/
开源ETL工具的局限性
如果使用得当并可接受开源ETL工具的局限性,免费ETL工具可以成为ETL管道中的固定组件。正如商用方案一样,这些产品也在不断改进和迭代。开源ETL工具的当前缺陷包括以下方面的有限支持能力:
·企业应用程序连接
·全面管理和错误处理功能
·非RDBMS连接
·变更数据捕获(CDC)
·集成数据质量管理和分析
·大数据量和小批量窗口
·复杂的转换要求
即便如此,许多企业仍然不愿意选择大型昂贵的数据集成套件而考虑开源ETL工具,它们可以替代耗时且容易出错的自定义数据集成工具。但是,最受欢迎的开源ETL工具的供应商仍然不是真正的社区驱动项目,不少项目不过是商用解决方案的功能限制版本。