ETL工具对比参考文档

合集下载

超详细的六款主流ETL工具介绍及功能对比

超详细的六款主流ETL工具介绍及功能对比

超详细的六款主流ETL⼯具介绍及功能对⽐概述ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于企业或⾏业应⽤来说,我们经常会遇到各种数据的处理,转换,迁移,所以了解并掌握⼀种etl⼯具的使⽤,必不可少。

最近⽤kettle做数据处理⽐较多,所以也就介绍下这⽅⾯内容,这⾥先对⽐下⼏款主流的ETL⼯具。

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

2、KettleKettle是⼀款国外开源的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、TalendTalend,是⼀家专业的开源集成软件公司,为企业提供开源的中间件解决⽅案,从⽽让企业能够在他们的应⽤,系统以及数据库中赢取更⼤的价值。

在传统软件公司提供封闭、私有的解决⽅案的领域Talend系列软件以开源的形式进⾏开发。

数据仓库中ETL工具的选型与使用

数据仓库中ETL工具的选型与使用

数据仓库中ETL工具的选型与使用随着企业信息化的深入发展,数据仓库在企业的日常运营中扮演着越来越重要的角色。

而在数据仓库建设中,ETL工具起着至关重要的作用。

本文将结合笔者多年的从业经验,深入探讨数据仓库中ETL工具的选型与使用,旨在为读者提供一些有用的参考。

一、ETL工具的概述首先,我们来了解一下ETL工具的概念。

ETL工具是指一类用于将不同来源的数据进行抽取(Extract)、转换(Transform)、加载(Load)等操作的软件。

在数据仓库中,ETL工具类似于“数据加工车间”,可以完成数据的清洗、整合、转换等多种工作。

目前市面上比较流行的ETL工具有很多,例如IBM DataStage、Informatica PowerCenter、Oracle Data Integrator等。

每个ETL工具都有其独特的特点及适用场景,选择一款合适的ETL工具非常关键。

二、ETL工具的选型在ETL工具的选型中,需要考虑以下几个方面:1. 企业规模及需求企业规模及需求是选择ETL工具的首要考虑因素。

对于规模较小的企业,可以选择一些开源的ETL工具,如Kettle和Talend Open Studio。

这些工具具有操作简便、易于掌握、可扩展性强等优点,适合小型企业以及需要快速实现数据仓库的项目。

而若企业具有大规模的数据仓库及数据流转需求,可以考虑一些成熟的商业ETL工具,如IBM DataStage、Informatica PowerCenter、Oracle Data Integrator等。

这些工具具有高度可靠性、高性能、强大的数据处理能力等优点,可以满足企业不断发展的需求。

2. 数据量及复杂度数据量及复杂度也是选择ETL工具的一个重要考虑因素。

对于数据量较小、简单的企业,可以选择一些基础的ETL工具,如Microsoft SQL Server Integration Services等。

这些工具主要用于数据提取、转换、加载等基础操作,适合数据量较小及较为简单的企业。

ETL工具介绍

ETL工具介绍

目录1. 引言 (3)1.1 编写目的 (3)1.2 文档背景 (3)1.3 预期读者 (3)1.4 参考资料 (3)2. ETL基本概念 (4)2.1 ETL的定义 (4)2.2 ETL的作用 (4)2.3 ETL工具的功能 (5)2.3.1 对平台的支持 (5)2.3.2 对数据源的支持 (5)2.3.3 数据转换功能 (6)2.3.4 管理和调度功能 (6)2.3.5 集成和开放性 (6)2.3.6 对元数据的管理 (7)3. 主流的ETL工具 (7)3.1 一类是专业ETL厂商的产品 (7)3.2 另一类是整体数据仓库方案供应商 (8)3.3 还有一类是由开源提供的软件 (8)4. 报表工具简介 (8)5. 前端展现 (9)6. 建行RIDE报表工具介绍 (9)6.1 RIDE介绍 (9)6.2 RIDE的应用 (10)6.3 RIDE功能 (10)1.引言1.1编写目的本文介绍ETL的基本感念和功能,以及ETL目前主流工具,并对BI/DW架构的最后一个环节报表展示,给予介绍。

1.2 文档背景1.3 预期读者对数据挖掘感兴趣的人员。

1.4 参考资料1.5 修改记录2.ETL基本概念2.1 ETL的定义ETL分别是“Extract”、“ Transform” 、“Load”三个单词的首字母缩写也就是“抽取”、“转换”、“装载”,但我们日常往往简称其为数据抽取。

ETL是BI/DW(商务智能/数据仓库)的核心和灵魂,按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。

ETL包含了三方面,首先是“抽取”:将数据从各种原始的业务系统中读取出来,这是所有工作的前提。

其次“转换”:按照预先设计好的规则将抽取得数据进行转换,使本来异构的数据格式能统一起来。

最后“装载”:将转换完的数据按计划增量或全部导入到数据仓库中。

2.2 ETL的作用ETL所完成的工作主要包括三方面:首先,在数据仓库和业务系统之间搭建起一座桥梁,确保新的业务数据源源不断地进入数据仓库;其次,用户的分析和应用也能反映出最新的业务动态,虽然ETL在数据仓库架构的三部分中技术含量并不算高,但其涉及到大量的业务逻辑和异构环境,因此在一般的数据仓库项目中ETL部分往往也是牵扯精力最多的;第三,如果从整体角度来看,ETL主要作用在于屏蔽了复杂的业务逻辑,从而为各种基于数据仓库的分析和应用提供了统一的数据接口,这也是构建数据仓库最重要的意义所在整个BI/DW系统由三大部分组成:数据集成、数据仓库和数据集市、多维数据分析。

ETL工具对比参考文档

ETL工具对比参考文档

E T L工具对比参考文档(总13页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除参考1:参考2:数据整合部分:PowerCenter,是业界公认领导者数据质量管理:Data Quality,成熟稳定技术,在中国有大规模应用的成功案例。

数据整合部分:Datastage,属于业界一类产品数据质量管理:QualityStage,收购的技术,不是主要其主要产实时数据捕获:PowerExchange,业界领先实时采集技术,支持广泛数据源的CDC和Realtime,与PowerCenter无缝集成。

元数据管理:Metadata Manager,是业界领先的企业级元数据管理平台,可做到字段级的元数据各项分析,有广泛的元数据采集接口,图形化无需编程,并可自动维护变更。

品组成实时数据捕获:MQ和DataMirror 的技术,技术复杂,与DataStage 是不同风格产品,产品的耦合度极差。

元数据管理:MetaStage,几乎免费的产品,应用性极差,并不能管理企业级的元数据。

而新推出的产品与旧有产品线耦合度差,并未经过市场的考验。

Informatica 是全图形化的开发模式,不需要编码,工具易使用,界面友好、直观。

专业的三天培训,可使开发人员快速入门,进行开发设计。

开发人员只要懂得数据库知识,即可。

Informatica 产品是以元数据为核心的,其开发过程中,所有的元数据,包括规则和过程,均是可复用,共享的。

经过简单配置即可支持大数据量的处理。

Informatica是完全基于引擎级别的,所有功能模块化,扩展性强,维护成本低。

虽然也是图形化的界面,但复杂的转换过程,里面嵌入了很多类Basic脚本的成份。

要求开发人员,有编程语言基础。

在处理大数据量,必须使用Datastage企业版。

但如果客户原先使用的Datastage 标准版,其作业的版本移植问题很大。

ETL工具优缺点对比分析(kettle和Informatica)

ETL工具优缺点对比分析(kettle和Informatica)

ETL工具优缺点对比分析(kettle和Informatica)ETL工具优缺点对比分析--kettle和Informatica 目前业内比较主流的ETL工具有很多,本文主要对开源kettle和Informatica这两款工具,从各方面进行对比分析。

一、数据捕获能力1、如果要对数据库进行实时监控,kettle通常会采用CDC的方式,Informatica会采取PWX的方式。

优点:可以准确的识别变化数据,包括上游系统被删除的数据。

缺点:CDC和PWX都需要部署在核心数据库服务器,会对核心数据库造成一定压力。

2、如果不采用实时监控,采用其他方式抽取,(比如时间戳)。

优点:不需要在核心服务器部署,对核心服务器基本不会造成压力。

缺点:被删除的记录,以及手工修改但是没有修改时间戳的记录无法在下游数据库识别。

二、整体性能对比1、Informatica处理数据能力比kettle强。

2、Informatica属于收费软件,出现困难问题,可以找厂商解决。

3、kettle比较容易上手,Informatica需要充足的学习准备。

4、kettle部署相对简单。

三、数据处理能力ETL工具在处理数据的时候,要目标库日志空间,表空间足够。

日志需要定期清理,表空间自动扩展就好。

kettle:可以高效处理千万级别以下数据。

Informatica:可处理上亿量级的数据。

四、实时监控对核心数据库压力CDC:部署在核心数据库,读取核心数据库的归档日志,会在核心数据库生成实体表(每次数据变化,都会生成条记录,可以清理)。

PWX:部署在核心数据库,对核心压力较小,但是如果异常中断,重新启动的时候,会占用较大服务器资源。

ETL说明文档

ETL说明文档

ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析的依据ETL是BI项目最重要的一个环节,通常情况下ETL会花掉整个项目的1/3的时间,E TL设计的好坏直接关接到BI项目的成败。

ETL也是一个长期的过程,只有不断的发现问题并解决问题,才能使ETL运行效率更高,为项目后期开发提供准确的数据。

ETL的设计分三部分:数据抽取、数据的清洗转换、数据的加载。

在设计ETL的时候也是从这三部分出发。

数据的抽取是从各个不同的数据源抽取到ODS中(这个过程也可以做一些数据的清洗和转换),在抽取的过程中需要挑选不同的抽取方法,尽可能的提高ETL的运行效率。

ETL三个部分中,花费时间最长的是T(清洗、转换)的部分,一般情况下这部分工作量是整个ETL的2/3。

数据的加载一般在数据清洗完了之后直接写入DW中去。

ETL的实现有多种方法,常用的有三种,第一种是借助ETL工具如Oracle的OWB、SQL server 2000的DTS、SQL Server2005的SSIS服务、informatic等实现,第二种是SQL方式实现,第三种是ETL工具和SQL相结合。

前两种方法各有优缺点,借助工具可以快速的建立起ETL工程,屏蔽复杂的编码任务,提高速度,降低难度,但是欠缺灵活性。

SQL的方法优点是灵活,提高ETL运行效率,但是编码复杂,对技术要求比较高。

第三种是综合了前面二种的优点,极大的提高ETL的开发速度和效率。

数据的抽取数据的抽取需要在调研阶段做大量工作,首先要搞清楚以下几个问题:数据是从几个业务系统中来?各个业务系统的数据库服务器运行什么DBMS?是否存在手工数据,手工数据量有多大?是否存在非结构化的数据?等等类似问题,当收集完这些信息之后才可以进行数据抽取的设计。

1、与存放DW的数据库系统相同的数据源处理方法这一类数源在设计比较容易,一般情况下,DBMS(包括SQLServer,Oracle)都会提供数据库链接功能,在DW数据库服务器和原业务系统之间建立直接的链接关系就可以写Se lect 语句直接访问。

常用ETL工具对比

常用ETL工具对比

常用ETL工具对比
目前市场上主流的ETL工具有,IBM公司的DataStage、Informatica公司的Powercenter、免费ETL工具Kettle等等。

1、Datastage
DataStage 是一套专门对多种操作数据源的数据抽取、转换和维护过程进行简化和自动化,并将其输入数据集市或数据仓库目标数据库的集成工具。

他的优点如下:具有多种数据源的连接能力,包括目前市场上的大部分主流数据库,并且具有优秀的文本文件和XML文件读取和处理能力。

2、Informatica
Informatica PowerCenter用于访问和集成几乎任何业务系统、任何格式的数据,它可以按任意速度在企业内交付数据,具有高性能、高可扩展性、高可用性的特点。

Informatica PowerCenter包括4个不同版本,即:标准版,实时版,高级版,云计算版。

同时,它还提供了多个可选的组件,以扩展Informatica PowerCenter的核心数据集成功能,这些组件包括:数据清洗和匹配、数据屏蔽、数据验证、Teradata双负载、企业网格、元数据交换、下推优化(Pushdown Optimization)、团队开发和非结构化数据等。

3、Kettle
Kettle是一款国外开源的etl工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定,提供丰富的sdk,并开放源代码,便于二次开发包装。

ETL和EAI的比较

ETL和EAI的比较

ETL和EAI比较什么是EAI?企业的业务流程会同时涉及到多个应用系统,因此要求这些系统能够协同,但接口、架构的不统一往往使得这些本应紧密集成的应用系统成为了一个个“信息孤岛”。

于是,企业应用集成(EnterpriseApplication Integration,EAI)技术应运而生,它可以通过中间件作为粘合剂来连接企业内外各种业务相关的异构系统、应用以及数据源,从而满足E-Commerce、ERP、CRM、SCM、OA、数据库、数据仓库等重要系统之间无缝共享和交换数据的需要。

EAI涉及技术广泛,实施复杂。

基本特征EAI的核心是使用中间件连接企业应用。

有多种不同类型的中间件可以提供EAI的功能。

在选择EAI中间件时需注意以下的基本特征:* 通过中间件将不同的应用连接起来,保证应用的独立性,在不需要修改应用自身的业务逻辑的同时,又解决了数据共享问题。

* 对核心共享业务数据模型的处理与支持。

* 实现业务流程自动化。

确保各个部门在采用不同的系统的同时可以协同完成同一个工作。

* 支持应用架构的不断变更。

可以方便地重新配制以增加或去除系统而不会影响其它系统。

* 能够提供实时接口和批处理接口,能够提供同步和异步接口。

* 必须保证数据的安全,只有目的应用可以读取。

* 良好的性能和数据吞吐量,并且具有灵活的可扩展性以适应企业的发展。

* 必须具备恢复机制,当数据传输过程中发生连接中断等异常时可以确保数据的恢复。

* 对流程管理提供预定义的通用模型与行业模型。

* 既能够提供实时接口和批处理接口,又能够提供同步和异步接口。

* 能够提供实时接口和批处理接口,能够提供同步和异步接口。

五大层面一个完整的EAI 解决方案应当包含以下五个层面:* 用户交互:实现应用用户界面统一的接入与安全机制,利用门户技术进行构建。

* 应用连接:通过HUB 或总线架构,实现应用与应用之间的连接,完成相关的数据路由与数据格式转换。

* 业务流程整合:实现业务流程管理,包括工作流管理和自动化流程两个方面。

ETL工具--kettle篇(17.10.09更新)

ETL工具--kettle篇(17.10.09更新)

ETL⼯具--kettle篇(17.10.09更新) ETL是EXTRACT(抽取)、TRANSFORM(转换)、LOAD(加载)的简称,实现数据从多个异构数据源加载到数据库或其他⽬标地址,是数据仓库建设和维护中的重要⼀环也是⼯作量较⼤的⼀块。

当前知道的ETL⼯具有informatica, datastage,kettle,ETL Automation,sqoop,SSIS等等。

这⾥我们聊聊kettle的学习吧(如果你有⼀定的kettle使⽤,推荐看看Pentaho Kettle解决⽅案,这⾥⽤kettle实践kimball的数据仓库理论。

)。

内容有:认识kettle、安装kettle、简单⼊门实例、进阶实例、Linux中kettle部署、kettle发邮件、常见错误 认识kettle 安装kettle 2、kettle使⽤时,需要访问相关的关系型数据库,则需要下载对应的链接驱动。

⽐如我们访问MySQL,则下载相应的驱动解压后放⼊kettle⽂件的lib⽬录下 3、下载kettle并解压到⾃定义位置。

kettle其实是以前的叫法,现在官⽅称为:PDI(Pentaho Data Integeration)。

在windows中,双击⽬录中的Spoon.bat 启动kettle. 简单的kettle实例 1、新建作业/转换(功能区:⽂件 --> 新建 --> 作业;新建-->转换) ⼀个作业(job,⽂件以kjb结尾)的主体是转换(transform,以ktr结尾),job主要来设置调度,可以有影⼦拷贝,任⼀拷贝信息修改所有拷贝的都被修改;transform做主体的内容,控件名称唯⼀。

2、三个控件(start、转换、成功)和流程线(hop); start:job开始的地⽅,可以设置开始的时间、频率、周期等(但要求kettle不能关闭,有点挫) 转换:后续详解 成功:job结束 流程线:关联两个控件(实体),指定数据流。

基于ETL的快速数据在线比对设计

基于ETL的快速数据在线比对设计

基于ETL的快速数据在线比对设计作者:汤蕾蕾来源:《硅谷》2014年第10期摘要在大量业务型的数据仓库中,存在海量数据比对碰撞的问题,如何通过海量数据的比对碰撞,发现目标结构是当前数据仓库中面临的一个严峻的现实问题。

在许多系统中,通过消息队列的形式进行比对碰撞的实现。

在本文中,我们通过ETL的方式在抽取的同时结合XML的配置完成比对模块的直接运行。

通过ETL的同时进行比对,达到数据比对的最大效率,在进库的同时就进行数据的比对碰撞,及时的获取比对结果信息。

关键词 ETL;数据比对;XML;数据抽取中图分类号:TP242 文献标识码:A 文章编号:1671-7597(2014)10-0068-021 WEB技术设计数据比对WEB部分包含两块功能,1)提供界面对需要参与在线辑控的数据源库和目标库已经需要相关的条件进行设置。

2)对ETL任务的运行时间参数和启、停进行设置。

其中在线辑控的对需要进行辑控的数据源库和目标库进行设置将仍然采用XML配置文件方式,如图1。

说明:basesql字段,为比对结果表中固化的字段,如比对的结果是人的信息,那么必须有身份证、姓名、性别等,如果是是车辆的话必须有车牌号码,车辆名称等信息。

对于产生这条比对结果信息的源库和目标库的信息ID也将保存。

resultsql字段为比对结果表中保存的希望关注源库中的一些字段的信息,将会保存到比对结果表的一个clob字段中。

WEB方面负责提供界面供用户选择需要进行关注的库和相关的字段,保存后生成对应的sql语句形成一个在线辑控任务。

用户可以对这个在线辑控任务进行启动、停止设置。

对ETL抽取任务的控制:ETL的抽取任务有数据组在设计、测试完成后,在数据库中设置需要定时执行的任务属性,其中设置定时执行的参数是保存在一张表中,这张表和字段必须固化下来。

WEB端提供UI接口供用户管理ETL任务的启动、停止,以及相关的任务执行时间等参数的设定,并且提供任务的上次运行时间等信息。

常见的三款ETL工具比较

常见的三款ETL工具比较

支持 能够捕获表结构的变化
DataStage TX产品
设计手段和产品组合来支持 设计手段和产品组合来支持 设计手段和产品组合来支持 设计手段和产品组合来支持
支持 支持 支持 支持
支持
有 支持 有 需要用DataStage TX产品
支持,但对于进程附加任务无法监控
支持 支持(多种时间和事件) 支持
支持 支持(包括ETL任务和其他EXE,BAT等任务的监控和返回 值的获得)
数据库的load stage) 支持
SQL Server和Altibase等数据库) 支持
支持
设计手段和产品组合来支持
支持
较好
较好
较好
较快
较好
较好
采用RDBMS储存,支持多种OS
支持 支持
支持 支持
支持
支持
支持(Metad换 (Metadata Exchange) 支持
wwwg1comproductscustomerdataquality专门做数据质量管理etl例外跟踪与监控支持支持支持支持数据预览etl例外捕获与处理支持支持支持支持数据预览出错分析功能支持有语法检查功能支持调试功能支持支持支持支持数据预览和运行瓶颈的定位日志功能支持支持但不能导出成文本也不能为外部程序利用支持故障容错与恢复支持不支持设计手段和产品组合来支持增量抽取支持策略设计手段和产品组合来支持支持设计手段和产品组合来支持数据变化捕获设计手段和产品组合来支持能够捕获表结构的变化设计手段和产品组合来支持消息队列设计手段和产品组合来支持设计手段和产品组合来支持实时数据抽取设计手段和产品组合来支持datastagetx产品设计手段和产品组合来支持任务调度计划支持支持基于时间的调度基于事件的调度支持支持支持多种时间和事件提供调度的api供运维平台调用支持支持并发任务调度支持需要用datastagetx产品支持任务的监控支持支持但对于进程附加任务无法监控支持包括etl任务和其他exebat等任务的监控和返回值的获得高级功能错误信息的捕捉支持支持但很多时候信息不准确支持包括将错误信息发送email在指定的计算机上弹出窗口发手机短信等功能专用数据库驱动支持支持大批量数据转移调用数据库自身功能load支持没有通过写脚本间接支持7版后有针对不同数据库的loadstage支持oracledb2sybaseinformixredbricksqlserver和altibase等数据库进程并发处理支持支持支持线程并发处理支持支持负载均衡powercenter支持设计手段和产品组合来支持对cpu内存的可管理和分配支持支持稳定性在nt平台上不够稳定较好较好处理速度较快较好较快大数据量压力测试810g小时较好较好元数据是否采用rdbms储存os支持情况采用rdbms储存支持多种os采用rdbms存储如果客户没有rdbmssagent内置提供mysql支持多种os元数据库备份恢复支持支持支持元数据库的迁移支持支持支持

主流ETL工具 VS ETLPlus V5

主流ETL工具 VS ETLPlus V5

4. 调度架构
DataStage 和 PowerCenter 架构都采用调度服务器负责制,即调度和作业执行,都由调 度服务器来执行,这样结构的缺点是,对于不在同一台机器的几个作业要组成作业流,必须 作业自身写程序来实现。增加了系统的复杂性。 ETLPlus5 采用管理服务器+调度服务器+代理的三层体系结构。作业触发由调度服务器 负责,真正执行作业的是代理。同一个作业流的作业可以部署在不同代理上,真正做到了分 布式部署和分布式调度。 比较:ETLPlus5 采用的调度服务器+代理架构更灵活,真正做到了分布式作业调度,并 容易提供更好地负载均衡。
2.9. 监控
PowerCenter: C/S 界面,支持按时间和列表两个维度的作业流状态和关联历史信息查 询 DataStage:C/S 界面,支持列表方式的作业执行状态查询。 ETLPlus5:B/S 界面,支持作业流、作业的总体监控和按计划和事件查看作业流状态, 也可查询作业流和作业历史状态。 比较: ETLPlus5 的 B/S 监控界面更容易集成,既可以监控作业流和作业的整体情况,也可以 看到历史状态,监控更全面和方便。
主流 ETL 工具 VS ETLPlus5
2.8. ETL 工作流
PowerCenter: 支持顺序、并行工作流,支持事件、时间、文件到达触发,支持 Email, 循环调度需逻辑实现。 DataStage:支持顺序、并行工作流,支持时间、文件到达触发,不支持事件触发,支 持 Email,支持循环调度。 ETLPlus5:支持顺序、并行工作流,支持事件、时间、文件到达触发,支持 Email,支 持循环调度。 比较: PowerCenter 没有循环工作流组件, 通过它的事件触发机制可以实现 ETL 工作流循环的 能力。 DataStage 没有事件触发机制,需通过 shell 命令逻辑实现。 ETLPlus 支持以上所有工作流特性。

ETL_文档

ETL_文档

×××BI项目之ETL文档×××项目组2004-12-19目录一、ETL之概述1、ETL是数据仓库建构/应用中的核心过程2、ETL的体系结构3、ETL的设计原则二、×××数据仓库建构中的ETL:分析与设计1、面临的问题2、明确需求:需要哪些数据?3、分析数据源:从何处获取数据?能获取怎样的数据?4、基于数据源及数据仓库模型,建立从源到目标的映射模型:如何获取数据?5、元数据库模型的建构三、×××数据仓库建构中的ETL:开发/实现1、元数据驱动下的ETL基本实现2、关于与OA及×××传输工具接口的额外实现3、元数据的配置、维护与管理一、ETL概述1、ETL是数据仓库建构/应用中的核心过程数据源具有多样性和可变性数据仓库系统是在业务系统的基础上发展而来的,其内部存储的数据来自于事务处理的业务系统和外部数据源。

因企业的业务系统是在不同时期、不同背景、面对不同应用、不同开发商等各种客观前提下建立的,其数据结构、存储平台、系统平台均存在很大的异构性。

这导致企业内各源数据缺少统一的标准,因而其数据难以转化为有用的信息,原始数据的不一致性导致决策时其可信度的降低。

此外,随着企业的不断发展,既有的业务系统、业务流程以及相关的信息结构都可能会发生变化,这种变化将直接影响到后端数据仓库系统中的数据更新。

如何有效的维护这种变化,尽量控制数据仓库刷新操作的成本,也是数据仓库建构中极为重要的一个问题。

ETL的核心功能定位ETL是建构企业数据仓库(Data Warehousing,即DW)从而实现商务智能(Business Intelligence,即BI)的核心和灵魂,它按照统一的规则集成数据并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。

主流数据同步ETL工具的比较

主流数据同步ETL工具的比较

视图增量交换整合任务(增量触发方式可 需另购ODI产品;不支持二进制 步任务;不支持二进制文件的
选:CDC触发、标识位、时间戳、触发器 文件的复制同步任务,不支持 复制同步任务场景; 不支持
、全量比对);6. 自定义SQL-EL任务; 7. 文 数据文件加载数据库/仓库的任 WS/REST服务对接; 没有数据比
件交换任务;8. 数据文件加载任务; 9. 务场景;不支持WS/REST服务 对的任务功能
WS/REST服务对接任务
对接;没有数据比对的功能
支持批处理的任务 (ETL),不支持日志模式 的CDC增量复制同步任 务;不支持二进制文件 的复制同步任务场景; 不 支持WS/REST服务对接; 没有数据比对的任务功 能
设 计 及 架 构
使用方式
完全web图形化界面“点击式”任务设计和 监控管理,简单易用,不需要额外的开发 没有图形化的界面,操作皆为 和生产发布;无需在源库端或目标库端部 命令行方式,可配置能力差。 署代理程序,对源库性能影响几乎为零; 界面配置管理工具需单独购买 高级版支持多租户SaaS服务平台的使用方 。 式
自动断点续 传
所有任务类型均支持断点续传;且集群版 中任务转移后,任务在新节点会自动从断 点续传
支持
不支持
不支持
不支持,依赖ETL设计的合 理性(例如T-1),指定续 读某个时间点的数据,非自 动


图形界面化、自动化的schema mapping
异构转换映 和智能化的异构数据类型匹配;支持

schema级、表级、字段级的映射和记录
支持:1.全量任务;2.实时增量任务(日志 只支持CDC增量(日志模式)的复
CDC);3. 全量+增量任务(源库不停服模 制同步任务,不支持全量任 支持批处理的任务(ETL),不支

ETL概述及部分工具比较

ETL概述及部分工具比较

ETL概述及部分工具比较ETL的重要性ETL即数据抽取(Extract)、转换(Transform)、装载(Load)的过程,在数据仓库建置过程中,资料整合转换(ETL)是最花费时间、人力的,约占整个项目的60%-70%左右。

一家企业除了在不同的成长阶段所留下来历史资料,还包括使用者所产生的大量资料,及对外部所取得的资料,这些信息可能来自不同的数据库平台,或一些特定的档案格式。

而ETL就是要将各个不同的数据文件或数据库所撷取的资料,根据企业之需求及数据仓库Model的设计,转换成正确的信息,清除重复不需要的资料,转至统一的数据库中,保留在企业内以利后续使用。

由于一些历史原因,统计口径原因企业内部各个部门的数据可能各自差异,做ETL方案时,往往会卷入到该企业的数据标准,规范制订中,而对于集团企业特别是对于过去是分散管理的集团公司,还将面对规范各个企业的生产系统统计口径,以及面对各个子公司系统。

如果不采用专业的ETL工具将会使得项目在数据仓库的ETL这个过程上耗费相当的时间。

综上所述如何在按需求将各个子公司业务数据导入到平台中,就变得越来越重要。

1 ETL工具VS 手工编码实现ETL,到底是选用ETL工具,还是手工编码?对于这个话题的争论可以说永无休止。

很显然,这两种方式都有各自的优势和劣势,相信在很长一段时间里谁也无法取代谁。

我们认为有必要从以下几方面对两种方式作一个比较。

除以上列表以外,采用专业的ETL工具还具有以下特点:1.详细的纪录成功情况和过程,日志功能完善,方便你查找问题,提高效率;2.容错性能好。

比如插入10条记录,在手工编码里写一起提交,可能因为1条出错而全部回滚,而etl工具就这一条不成功;2 市面ETL工具比较Data Stage: 为开放式、可延伸的结构,其简单易见的设计工具让开发人员可以增加资料来源、目标,无须重新建立应用程序,因而减低了成本时间及资源。

Informatica:为国外知名资料整合厂商,其最大的优点在于re-usable,因为可重复使用设计好的transform不需每次重新规定,大幅缩短开发时程及人力,管理元数据的功能较同类产品比较强,为目前市面上极佳的资料转换工具。

ETF工具比较

ETF工具比较

企业级ETL工具间的对比ZDNet管理软件频道时间:2008-03-03作者:资料来源: |本文关键词:目录1. 目标读者2. 介绍2.1 数据整合的市场趋势2.2 企业ETL3. 产品架构3.1 INFORMATICA POWERCENTER3.2 THE WINDOWS SERVER SYSTEM3.2.1 SQL Server Integration Services (SSIS)4. 功能对比4.1 介绍4.1.1 范围4.1.2 应用场景4.2 程序包配置数据登台数据登台4.3 值提取4.4 排序4.5 模糊匹配4.6 查询4.7 模块化4.8 渐变维度4.9 维度表装载4.10 真实表装载4.11 同包应用程序整合4.12 WEB服务和面向服务的架构(SOA)4.13 与消息中间件整合4.14 安全性4.15 协作开发4.16 设计期调试5. 结论6. 术语1.目标读者这篇文章通过对比SQL Server Integration Services和当前市场主流ETL工具Informatica PowerCenter来介绍SQL Server Integration Services,Microsoft新的数据集成(data integration)、数据提取(data extract)、数据转换(data transformation)以及数据装载(data loading)平台。

在SQL Server 2005中,SSIS(SQL Server Integration Service)是DTS(Data Transformation Service)的替代。

本文主要关注:• 对ETL和数据整合技术进行评估的专家和个人;• 对微软ETL和数据整合技术感兴趣的Informatica技术人员;• 对市场主流ETL和数据集成工具进行调查的商业智能和数据管理专业人员;• 关注Microsoft SQL Server 2005发布版微软数据转换服务(Data Transformation Service)技术人员。

E 工具对比参考

E 工具对比参考

参考1:参考2:参考3:1、Informatica属于商业软件,而Kettle是开源软件;Informatica的收费方式是软件一次性购买,但技术支持按项目收费。

具体怎么界定项目不清楚。

2、风险和成本方面自然就不用说了,从某些方面来说的话,风险总是与成本成反比的;3、易用性方面,Informatica和Kettle都有GUI图形界面,操作步骤都比较简单易用;主要取决于开发人员的对工具的熟悉情况,没有太大的可比性;4、Kettle是基于Java开发的ETL工具,在使用过程中需要借助JVM,在数据抽取速度以及大数据处理能力方面远远不如Informatica;(Kettle在异构数据库的处理能力比同构数据库的处理能力要弱很多,特别是夸服务器之间就更弱了)5、Informatica将客户端和服务端进行分离,而Kettle则没有但需要基于JVM;因此Kettle的部署比较简易;6、稳定性方面,Informatica也有较大的优势;7、Informatica将元数据及一些配置信息存储于配置的数据库,也就是说Informatica 需要借助其他数据库才能运行;8、Kettle的数据转换过程相对比较灵活,可以是手工编写的SQL语句、Java代码、正则表达式等;Informatica则由DataQuality组件来保证数据的质量,当然也支持SQL语句,两者没有明显的差异;9、Informatica和Kettle均有监控日志功能,这也是ETL工具必须具备的,Informatica 的监控日志相对要详细一些,但在实际应用中,大多数情况下不需要这么详细;10、数据源方面,二者没有明显区别,Kettle支持广泛的数据库、数据文件等,同时支持扩展;Informatica广泛支持各类结构化、非结构化的数据源;发现自己真懒,只写了几篇就不更新BLOG了。

近期要换工作,得做做知识储备和整理。

顺便开更把。

个人观点:1.如果是自家用,多数情况选哪个工具并不是决定性的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

参考1:参考2:其需改动的部分,其影响会很小。

➢开发转换过程,均为共享的、可复用的。

➢元数据发生变化,可通过View Dependencies 功能,生成所有相关对象的报表,方便跟踪、校验,以应对需求的变化。

➢应用需求变化,调整作业后,直接可以运行,不需要重新编译。

➢作业移植等,也不需要重新编译。

与平台和数据库无关。

➢支持跨操作系统的集群技术,可方便的进行平台级的扩展。

➢每次作业变化调整,均需重新编译,才可执行。

➢Datastage企业版与Datastage 标准版,其作业的版本移植问题很大。

这两个版本的工作平台、机制完全不同。

作业移植,大概要有70%左右需要重新开发定义。

一旦新的需求,需要企业版,其移植和再次开发,工作量要增加很多。

➢也因为两个版本的不兼容和脚本编译的开发模式,使之产品面对变化和扩展上,均有一定的限制。

项目实施的支持➢Informatica结合15多年的数据集成领域的经验,总结出一套针对Informatica产品实施数据仓库、数据管理等项目的最佳方法论Velocity 2008。

该成熟的开发方法论,是指导客户实现快速、高质量项目实施的最佳武器。

➢现在全国拥有众多的名高级技术专家与顾问,与国内如大唐,联创、神州数码、东软,中软等多家知名集成商成立战略合作伙伴,Informatica产品开发人员全国上千人规模。

➢Informatica支持服务中心是有非常熟练的技术支持工程师充当的,这些工程师具备你需要的、成功的专家知识。

在中国有专门的售后服务工程师。

➢无专业/成熟,基于产品的项目最佳开发方法论➢很难找到熟悉类Basic开发语言的Datastage开发工程师➢IBM是以服务为主的公司,如果客户采用了其DataStage产品,将要支付大笔的IBM咨询服务费。

产品安装完全图形化安装,无需额外安装平台软件,且不需修改系统内核参数➢需耗用时间安装和准备C编译环境,不同平台软件安装的C编译器也不尽相同➢需修改系统内核参数,对其他应用影响较大,有潜在的危险。

产品升级➢平滑升级,完全图形化,不需修改已设计完作业。

➢主要是升级资料库,工作量很小。

➢需重新编译已有作业➢大版本之间以及跨平台的升级,很多作业需重新编写/编译代码,重复操作和维护工作量大。

产品移植➢PowerCenter支持逻辑和物理设计分离的开发模式,有一个Mapping(逻辑的)和Session(物理的或者可运行)的概念,Mapping是逻辑上的ETL➢如果数据源,目标类型变化了,得修改以前所有的Job。

➢必须在新平台上编译所有作业,此参考3:1、Informatica属于商业软件,而Kettle是开源软件;Informatica的收费方式是软件一次性购买,但技术支持按项目收费。

具体怎么界定项目不清楚。

2、风险和成本方面自然就不用说了,从某些方面来说的话,风险总是与成本成反比的;3、易用性方面,Informatica和Kettle都有GUI图形界面,操作步骤都比较简单易用;主要取决于开发人员的对工具的熟悉情况,没有太大的可比性;4、Kettle是基于Java开发的ETL工具,在使用过程中需要借助JVM,在数据抽取速度以及大数据处理能力方面远远不如Informatica;(Kettle在异构数据库的处理能力比同构数据库的处理能力要弱很多,特别是夸服务器之间就更弱了)5、Informatica将客户端和服务端进行分离,而Kettle则没有但需要基于JVM;因此Kettle的部署比较简易;6、稳定性方面,Informatica也有较大的优势;7、Informatica将元数据及一些配置信息存储于配置的数据库,也就是说Informatica需要借助其他数据库才能运行;8、Kettle的数据转换过程相对比较灵活,可以是手工编写的SQL语句、Java代码、正则表达式等;Informatica则由Data Quality组件来保证数据的质量,当然也支持SQL语句,两者没有明显的差异;9、Informatica和Kettle均有监控日志功能,这也是ETL工具必须具备的,Informatica的监控日志相对要详细一些,但在实际应用中,大多数情况下不需要这么详细;10、数据源方面,二者没有明显区别,Kettle支持广泛的数据库、数据文件等,同时支持扩展;Informatica广泛支持各类结构化、非结构化的数据源;发现自己真懒,只写了几篇就不更新BLOG了。

近期要换工作,得做做知识储备和整理。

顺便开更把。

个人观点:1. 如果是自家用,多数情况选哪个工具并不是决定性的。

工具能优化工作效率,但不是没有就不能干活的,关键是设计,即使不用这些,靠程序和数据库自己的PROCEDURE 也能搞定这些事情。

2. 如果是作为BI的一部分,总不能让客户自己写代码吧偷笑。

土鳖比较:Informatica --> 土豪首选;SSIS --> 装SQL SERVER了吗?如果装了还需要考虑什么?kettle --> 免费。

以下都是转的:常见ETL工具:/hfxl1108/article/details/8564941Informatica VS SSIS从易用性来说,Informaitca有四个开发管理组件,初学者可能不知道如何下手,所以关键先要了解PowerCenter 的开发流程。

SSIS有BIDS和SSMS,主要的开发工作在BIDS上完成,但是BIDS是基于Visaul Studio的,如果是没有做过.NET开发的人员,VS的复杂的开发环境可能让他们不知所措,但是对于熟悉VS的开发人员来说,通过VS,他们可以使用更多的资源,比如源管理器,VSTFS等。

从界面的人性化上看,SSIS无疑更好,这是Microsoft的一贯特色,PowerCenter有些地方连右键菜单都没有。

SSIS的数据流如同PowerCenter的Mapping,SSIS的控制流如同PowerCenter的Task,SSIS的Package如同PowerCenter的WorkFlow。

PowerCenter的Mapping和WorkFlow分开开发,在一个大型开发团队中,开发人员开发Mapping,而有管理人员将多个Mapping在WorkFlow中统一调度。

但如果是只有几个人的开发团队中,这种模式的效率就不如SSIS了,因为小型团队中每个人都独立工作,开发人员需要开发好Mapping后,再在WorkFlow 建立Session,需要再一次为Session配置连接和参数。

相反,SSIS不适合多人开发,因为不像PowerCenter将Mapping 和WorkFlow分开开发,所以当一个人在开发Package时,其他人就插不上手。

SSIS的运行监控是非常棒的设计,可以看到数据流的执行情况。

如果数据流出问题,可以马上知道在那个转换组件上发生了问题。

而PowerCenter的Monitor只能看到源和目标的情况,一旦出状况,就只能看日志了,但在日志大量的文本里,很多时候是找不出问题的所在。

除了执行时监控外,SSIS在开发时可以动态的Validate,而且它的Validate也严格得多。

只要发现字段类型对应不上就会报错。

PowerCenter中Port的对应比较自由,比如一个Output的Port可以随意对应到多个Input的Port,而SSIS中一定要用多播组件才行。

所以在数据质量方面,SSIS 比PowerCenter更有保障,PowerCenter最郁闷的是,报错后却找不到出错的地方。

就组件的功能上,SSIS比PowerCenter要丰富,像SSIS控制流的循环组件,数据流中的模糊查找、词频计算、数据挖掘评分等组件都是Informaitca没有的。

特别是有很多针对SQL Server组件。

如果使用非SQL Server数据库的话,SSIS功能上要打个七折。

SSIS最致命的问题是数据库连接的兼容性上,数据流中很多组件只认OLE DB连接,而且只有OLE DB数据源组件才可以加参数,这显然是Microsoft有意为之。

加上SSIS的Validate比较严格,所以连接到那些对OLE DB兼容不好的数据库就会报错,像我之前连接Oracle 9i就碰到这样的问题。

PowerCenter支持更多的数据源,此外还可以连接SAP, PeopleSoft等商业软件,在大型企业中,这些功能是非常方便的。

Informatica VS Kettle1、Informatica属于商业软件,而Kettle是开源软件;Informatica的收费方式是软件一次性购买,但技术支持按项目收费。

具体怎么界定项目不清楚。

2、风险和成本方面自然就不用说了,从某些方面来说的话,风险总是与成本成反比的;3、易用性方面,Informatica和Kettle都有GUI图形界面,操作步骤都比较简单易用;主要取决于开发人员的对工具的熟悉情况,没有太大的可比性;4、Kettle是基于Java开发的ETL工具,在使用过程中需要借助JVM,在数据抽取速度以及大数据处理能力方面远远不如Informatica;(Kettle在异构数据库的处理能力比同构数据库的处理能力要弱很多,特别是夸服务器之间就更弱了)5、Informatica将客户端和服务端进行分离,而Kettle则没有但需要基于JVM;因此Kettle的部署比较简易;6、稳定性方面,Informatica也有较大的优势;7、Informatica将元数据及一些配置信息存储于配置的数据库,也就是说Informatica需要借助其他数据库才能运行;8、Kettle的数据转换过程相对比较灵活,可以是手工编写的SQL语句、Java代码、正则表达式等;Informatica则由Data Quality组件来保证数据的质量,当然也支持SQL语句,两者没有明显的差异;9、Informatica和Kettle均有监控日志功能,这也是ETL工具必须具备的,Informatica的监控日志相对要详细一些,但在实际应用中,大多数情况下不需要这么详细;10、数据源方面,二者没有明显区别,Kettle支持广泛的数据库、数据文件等,同时支持扩展;Informatica广泛支持各类结构化、非结构化的数据源;Pentaho的Java scipt在写数据整合任务的时候非常强大。

Informatica有很多的企业级特性,比如数据库之间的负载均衡。

Pentaho的界面相较于Informatica来说需要的培训要少很多。

Penatho不需要像Informatica那样大的前期投入。

Informatica比Pentaho更快。

Informatica有下推优化,但是如果对Pentaho做一些调整,并且有更多对数据库的了解,你可以改进Pentaho的速度。

相关文档
最新文档