ETL基础知识-2 : ETL常用工具对比

1、DataPipeline

  Data Pipeline是一家为企业用户提供数据基础架构服务的科技公司,DataPipeline数据质量平台整合了数据质量分析、质量校验、质量监控等多方面特性, 以保证数据质量的完整性、一致性、准确性及唯一性,彻底解决数据孤岛和数据定义进化的问题。


2、Kettle

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

Kettle家族目前包括4个产品:Spoon、Pan、CHEF、Kitchen。

SPOON 允许你通过图形界面来设计ETL转换过程(Transformation)。

PAN 允许你批量运行由Spoon设计的ETL转换 (例如使用一个时间调度器)。Pan是一个后台执行的程序,没有图形界面。

CHEF 允许你创建任务(Job)。任务通过允许每个转换,任务,脚本等等,更有利于自动化更新数据仓库的复杂工作。任务通过允许每个转换,任务,脚本等等。任务将会被检查,看看是否正确地运行了。

KITCHEN 允许你批量使用由Chef设计的任务 (例如使用一个时间调度器)。KITCHEN也是一个后台运行的程序。


3、Talend

Talend,是一家专业的开源集成软件公司,为企业提供开源的中间件解决方案,从而让企业能够在他们的应用,系统以及数据库中赢取更大的价值。在传统软件公司提供封闭、私有的解决方案的领域Talend系列软件以开源的形式进行开发。Talend,可运行于 Hadoop 集群之间,直接生成 MapReduce 代码供 Hadoop 运行,从而可以降低部署难度和成本,加快分析速度。而且 Talend 还支持可进行并发事务处理的Hadoop2.0。

 

4、Informatica

Informatica是全球领先的数据管理软件提供商。在如下Gartner魔力象限位于领导者地位:数据集成工具魔力象限、数据质量工具魔力象限 、元数据管理解决方案魔力象限 、主数据管理解决方案魔力象限 、企业级集成平台即服务(EiPaaS)魔力象限。

Informatica Enterprise Data Integration包括Informatica PowerCenter和Informatica PowerExchange 两大产品,凭借其高性能、可充分扩展的平台,可以解决几乎所有数据集成项目和企业集成方案。

· Informatica PowerCenter用于访问和集成几乎任何业务系统、任何格式的数据,它可以按任意速度在企业内交付数据,具有高性能、高可扩展性、高可用性的特点。Informatica PowerCenter包括4个不同版本,即:标准版,实时版,高级版,云计算版。同时,它还提供了多个可选的组件,以扩展Informatica PowerCenter的核心数据集成功能,这些组件包括:数据清洗和匹配、数据屏蔽、数据验证、Teradata双负载、企业网格、元数据交换、下推优化(Pushdown Optimization)、团队开发和非结构化数据等。

· Informatica PowerExchange 是一系列的数据访问产品,它确保 IT 机构能够根据需要随时随地访问并在整个企业内传递关键数据。凭该能力,IT机构可以优化有限的资源和数据的业务价值。Informatica PowerExchange支持多种不同的数据源和各类应用,包括企业应用程序、数据库和数据仓库、大型机、中型系统、消息传递系统和技术标准。


5、Datax

DataX 是离线数据同步工具/平台,实现包括 MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS 等各种异构数据源之间高效的数据同步功能。

开源地址:https://github.com/alibaba/DataX


6、Oracle Goldengate

GoldenGate软件是一种基于日志的结构化数据复制软件。GoldenGate 能够实现大量交易数据的实时捕捉、变换和投递,实现源数据库与目标数据库的数据同步,保持亚秒级的数据延迟。

源端通过抽取进程提取redo log或archive log日志内容,通过pump进程(TCP/IP协议)发送到目标端,最后目标端的rep进程接收日志、解析并应用到目标端,进而完成数据同步。


图片摘自:https://www.cnblogs.com/DataPipeline2018/p/11131723.html

比较维度产品DataPipelinekettleOracle GoldengateinformaticatalendDataX
设计及架构 适用场景 主要用于各类数据融合、数据交换场景,专为超大数据量、高度复杂的数据链路设计的灵活、可扩展的数据交换平台 面向数据仓库建模传统ETL工具 主要用于数据备份、容灾 面向数据仓库建模传统ETL工具 面向数据仓库建模传统ETL工具 面向数据仓库建模传统ETL工具
使用方式 全流程图形化界面,应用端采用B/S架构,Cloud Native为云而生,所有操作在浏览器内就可以完成,不需要额外的开发和生产发布 C/S客户端模式,开发和生产环境需要独立部署,任务的编写、调试、修改都在本地,需要发布到生产环境,线上生产环境没有界面,需要通过日志来调试、debug,效率低,费时费力 没有图形化的界面,操作皆为命令行方式,可配置能力差 C/S客户端模式,开发和生产环境需要独立部署,任务的编写、调试、修改都在本地,需要发布到生产环境;学习成本较高,一般需要受过专业培训的工程师才能使用; C/S客户端模式,开发和生产环境需要独立部署,任务的编写、调试、修改都在本地,需要发布到生产环境; DataX是以脚本的方式执行任务的,需要完全吃透源码才可以调用,学习成本高,没有图形开发化界面和监控界面,运维成本相对高。
底层架构 分布式集群高可用架构,可以水平扩展到多节点支持超大数据量,架构容错性高,可以自动调节任务在节点之间分配,适用于大数据场景 主从结构非高可用,扩展性差,架构容错性低,不适用大数据场景 可做集群部署,规避单点故障,依赖于外部环境,如Oracle RAC等; schema mapping非自动;可复制性比较差;更新换代不是很强 支持分布式部署 支持单机部署和集群部署两种方式
功能 CDC机制 基于日志、基于时间戳和自增序列等多种方式可选 基于时间戳、触发器等 主要是基于日志 基于日志、基于时间戳和自增序列等多种方式可选 基于触发器、基于时间戳和自增序列等多种方式可选 离线批处理
对数据库的影响 基于日志的采集方式对数据库无侵入性 对数据库表结构有要求,存在一定侵入性 源端数据库需要预留额外的缓存空间 基于日志的采集方式对数据库无侵入性 有侵入性 通过sql select 采集数据,对数据源没有侵入性
自动断点续传 支持 不支持 支持 不支持,依赖ETL设计的合理性(例如T-1),指定续读某个时间点的数据,非自动 不支持,依赖ETL设计的合理性(例如T-1),指定续读某个时间点的数据,非自动 不支持
监控预警 可视化的过程监控,提供多样化的图表,辅助运维,故障问题可实时预警 依赖日志定位故障问题,往往只能是后处理的方式,缺少过程预警 无图形化的界面预警 monitor可以看到报错信息,信息相对笼统,定位问题仍需依赖分析日志 有问题预警,定位问题仍需依赖日志 依赖工具日志定位故障问题,没有图形化运维界面和预警机制,需要自定义开发。
数据清洗 围绕数据质量做轻量清洗 围绕数据仓库的数据需求进行建模计算,清洗功能相对复杂,需要手动编程 轻量清洗 支持复杂逻辑的清洗和转化 支持复杂逻辑的清洗和转化 需要根据自身清晰规则编写清洗脚本,进行调用(DataX3.0 提供的功能)。
数据转换 自动化的schema mapping 手动配置schema mapping 需手动配置异构数据间的映射 手动配置schema mapping 手动配置schema mapping 通过编写json脚本进行schema mapping映射
特性 数据实时性 实时 非实时 实时 支持实时,但是主流应用都是基于时间戳等方式做批量处理,实时同步效率未知 实时 定时
应用难度
是否需要开发
易用性
稳定性
其他 实施及售后服务 原厂实施和售后服务 开源软件,需自客户自行实施、维护 原厂和第三方的实施和售后服务 主要为第三方的实施和售后服务 分为开源版和企业版,企业版可提供相应服务 阿里开源代码,需要客户自动实施、开发、维护
自强不息,厚德载物
原文地址:https://www.cnblogs.com/zhoufei2514/p/12965823.html