etl 订阅
ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库。 展开全文
ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库。
信息
过    程
抽取、清洗、转换、装载
软件名称
Extract, transform, load
应    用
Informatica、OWB、DataStage、Beeload
ETL简介
ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据, ETL是BI(商业智能)项目重要的一个环节。
收起全文
精华内容
参与话题
问答
  • ETL

    万次阅读 2018-01-10 09:33:56
    当你想通过工具,从一个数据库将数据进行清洗后搬迁到另一个数据库,那么就可以通过ETL的数据抽取清洗转换加载工具来操作。 操作步骤1. 工具下载 kettle文件下载,解压即可用: 下载地址 2. 配置 首先我们...

    应用场景

    当你想通过工具,从一个数据库将数据进行清洗后搬迁到另一个数据库,那么就可以通过ETL的数据抽取清洗转换加载工具来操作。

    操作步骤

    1. 工具下载

    kettle文件下载,解压即可用:
    下载地址

    2. 配置

    首先我们了解下Epoint-DI能做什么?
    一般我在项目中数据抽取一般都是自己写定时任务,通过quartz或者其他任务调度框架来定时从数据源中抽取数据,所有有关数据的抽取、校验、转换等过程都是在代码中手工编写,针对不同的数据源都是需要手动来编写代码,然后重新发布数据抽取程序。但是通过DI就可以实现配置的方式来创建定任务调度,数据的抽取、校验、转换等过程。并且支持多种数据的输入、输出方式,有完善的过滤组件,数据处理组件等。


    简单的数据推送
    创建一个输入组件、一个输出组件即可。负责抽取和插入数据。

    这里写图片描述

    表输入:

    这里写图片描述

    表输出:

    这里写图片描述

    展开全文
  • ETL概述

    2018-09-03 15:34:08
    什么是ETL,就是讲业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,这个过程也就是ETL。通常,ETL是BI项目的一个很重要的环节,一般花费时间至少占据整个项目时间的1/3。ETL设计的好坏直接关系到珍格BI...

    什么是ETL,就是讲业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,这个过程也就是ETL。通常,ETL是BI项目的一个很重要的环节,一般花费时间至少占据整个项目时间的1/3。ETL设计的好坏直接关系到珍格BI项目的成败。
    ETL主要分为三个部分:
    抽取(extract)、交互转换(transform)、加载(load)

    1. 数据抽取
    2. 数据转换(T)
    3. 数据加载
      实现ETL,首先要实现ETL转换的过程,体现为一下几个方面:
      1、空值处理:可捕获字段空值,进行加载或替换为其他含义数据,并可根据字段空值实现分流加载到不同目标库。
      2、规范化数据格式:可实现字段格式约束定义,对于数据源中时间、数值、字符等数据,可自定义加载格式。
      3、拆分数据:依据业务需求对字段可进行分解。例,主叫号 861082585313-8148,可进行区域码和电话号码分解。
      4、验证数据正确性:可利用Lookup及拆分功能进行数据验证。例如,主叫号861082585313-8148,进行区域码和电话号码分解后,可利用Lookup返回主叫网关或交换机记载的主叫地区,进行数据验证。
      5、数据替换:对于因业务因素,可实现无效数据、缺失数据的替换。
      6、Lookup:查获丢失数据 Lookup实现子查询,并返回用其他手段获取的缺失字段,保证字段完整性。
      7、建立ETL过程的主外键约束:对无依赖性的非法数据,可替换或导出到错误数据文件中,保证主键唯一记录的加载。
    展开全文
  • ETl

    千次阅读 2014-03-21 12:07:54
    ETL 编辑 ETL,Extraction-Transformation-Loading的缩写,中文名称为数据提取、转换和加载。 ETL工具有:OWB(Oracle Warehouse Builder)、ODI(Oracle Data Integrator)、Informatic PowerCenter、...

    ETL
    ETL,Extraction-Transformation-Loading的缩写,中文名称为数据提取、转换和加载。 ETL工具有:OWB(Oracle Warehouse Builder)、ODI(Oracle Data Integrator)、Informatic PowerCenter、Trinity、AICloudETL、DataStage、Repository Explorer、BeeloadKettle、DataSpider

    1简介编辑

    ETL负责将分散的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库数据集市中,成为联机分析处理、数据挖掘的基础。
    ETL一词较常出现在数据仓库,但其对象并不局限于数据仓库。
    ETL是数据仓库中的非常重要的一环。它是承前启后的必要的一步。相对于关系数据库,数据仓库技术没有严格的数学理论基础,它更面向实际工程应用。所以从工程应用的角度来考虑,按着物理数据模型的要求加载数据并对数据进行一些系列处理,处理过程与经验直接相关,同时这部分的工作直接关系数据仓库中数据的质量,从而影响到联机分析处理和数据挖掘的结果的质量。
    数据仓库是一个独立的数据环境,需要通过抽取过程将数据从联机事务处理环境、外部数据源和脱机的数据存储介质导入到数据仓库中;在技术上,ETL主要涉及到关联、转换、增量、调度和监控等几个方面;数据仓库系统中数据不要求与联机事务处理系统中数据实时同步,所以ETL可以定时进行。但多个ETL的操作时间、顺序和成败对数据仓库中信息的有效性至关重要。

    2概念编辑

    ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程)作为BI/DW(Business Intelligence)的核心和灵魂,能够按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。如果说数据仓库的模型设计是一座大厦的设计蓝图,数据是砖瓦的话,那么ETL就是建设大厦的过程。在整个项目中最难部分是用户需求分析和模型设计,而ETL规则设计和实施则是工作量最大的,约占整个项目的60%~80%,这是国内外从众多实践中得到的普遍共识。
    ETL是数据抽取(Extract)、清洗(Cleaning)、转换(Transform)、装载(Load)的过程。是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。
    信息是现代企业的重要资源,是企业运用科学管理、决策分析的基础。目前,大多数企业花费大量的资金和时间来构建联机事务处理OLTP的业务系统和办公自动化系统,用来记录事务处理的各种相关数据。据统计,数据量每2~3年时间就会成倍增长,这些数据蕴含着巨大的商业价值,而企业所关注的通常只占在总数据量的2%~4%左右。因此,企业仍然没有最大化地利用已存在的数据资源,以致于浪费了更多的时间和资金,也失去制定关键商业决策的最佳契机。于是,企业如何通过各种技术手段,并把数据转换为信息、知识,已经成了提高其核心竞争力的主要瓶颈。而ETL则是主要的一个技术手段。

    3ETL工具应用编辑

    目前,ETL工具的典型代表有:Informatica、Datastage、OWB、微软DTS、BeeloadKettle……
    开源的工具有eclipse的etl插件。cloveretl.
    数据集成:快速实现ETL
    ETL的质量问题具体表现为正确性、完整性、一致性、完备性、有效性、时效性和可获取性等几个特性。而影响质量问题的原因有很多,由系统集成和历史数据造成的原因主要包括:业务系统不同时期系统之间数据模型不一致;业务系统不同时期业务过程有变化;旧系统模块在运营、人事、财务、办公系统等相关信息的不一致;遗留系统和新业务、管理系统数据集成不完备带来的不一致性。
    实现ETL,首先要实现ETL转换的过程。它可以集中地体现为以下几个方面:
    1、空值处理:可捕获字段空值,进行加载或替换为其他含义数据,并可根据字段空值实现分流加载到不同目标库。
    2、规范化数据格式:可实现字段格式约束定义,对于数据源中时间、数值、字符等数据,可自定义加载格式。
    3、拆分数据:依据业务需求对字段可进行分解。例,主叫号 861082585313-8148,可进行区域码和电话号码分解。
    4、验证数据正确性:可利用Lookup及拆分功能进行数据验证。例如,主叫号861082585313-8148,进行区域码和电话号码分解后,可利用Lookup返回主叫网关或交换机记载的主叫地区,进行数据验证
    5、数据替换:对于因业务因素,可实现无效数据、缺失数据的替换。
    6、Lookup:查获丢失数据 Lookup实现子查询,并返回用其他手段获取的缺失字段,保证字段完整性。
    7、建立ETL过程的主外键约束:对无依赖性的非法数据,可替换或导出到错误数据文件中,保证主键唯一记录的加载。

    4注意事项编辑

    为了能更好地实现ETL,笔者建议用户在实施ETL过程中应注意以下几点:
    第一,如果条件允许,可利用数据中转区对运营数据进行预处理,保证集成与加载的高效性;
    第二,如果ETL的过程是主动“拉取”,而不是从内部“推送”,其可控性将大为增强;
    第三,ETL之前应制定流程化的配置管理和标准协议;
    第四,关键数据标准至关重要。ETL面临的最大挑战是当接收数据时其各源数据的异构性和低质量。以电信为例,A系统按照统计代码管理数据,B系统按照账目数字管理,C系统按照语音ID管理。当ETL需要对这三个系统进行集成以获得对客户的全面视角时,这一过程需要复杂的匹配规则、名称/地址正常化与标准化。而ETL在处理过程中会定义一个关键数据标准,并在此基础上,制定相应的数据接口标准。

    5ETL工具及代理商编辑

    PervasiveDI中国区战略合 作伙伴---德昂信息技术(北京)有限公司(Data on Demand China Ltd, 以下简称德昂)是一家跨足海峡两岸,目前在北京,上海,厦门和台北设有公司的专业商务智能解决方案提供商, 公司提供从商务智能项目的前期咨询、商务智能系统的规划、工具的评估和选择、报表和仪表盘需求的梳理和规划、数据仓库和集市的设计和实施、报表和分析系统的设计、实施和上线的整体实施服务。德昂公司并且在能源, 保险,证劵,零售,地产和企业客户中率先实施移动商务智能解决方案。并且可以提供下列类似主题的完整解决方案 :集团决策支持系统或者管理决策驾驶舱,财务部门的财务数据中心,制造业的采购BI, 石油石化行业的移动决策支持系统,运营管理决策支持系统, 零售行业的市场营销和奖金自动化系统等。
    德昂是全球领先的商务智能平台Microstrategy Actian公司的高性能数据库Vectorwise和数据整合ETL工具 PervasiveDI在中国的分销代理;并结合RoamBI, Trinity,Informatica, SAP BPC,IBM DataModeler等工具产品,打包成完整的商务智能解决方案;同时,针对Microstrategy和Pervasive DI产品提供完整的架构设计,建模服务,效能调优,报表和仪表盘开发,产品支持,二次开发支持和维保服务。除了直接面向最终客户,德昂也一直专注于建立一个良好的BI支持服务平台, 协助国内各行各业的集成商(SI)和软件开发商(ISV)在项目或其应用产品中使用BI工具,以便提升其产品和解决方案的价值。

    6特色功能编辑

    ETL过程在很大程度上受企业对源数据的理解程度的影响,也就是说从业务的角度看数据集成非常重要。一个优秀的ETL设计应该具有如下功能:

    管理简单

    采用元数据方法,集中进行管理;接口、数据格式、传输有严格的规范;尽量不在外部数据源安装软件;数据抽取系统流程自动化,并有自动调度功能;抽取的数据及时、准确、完整;可以提供同各种数据系统的接口,系统适应性强;提供软件框架系统,系统功能改变时,应用程序很少改变便可适应变化;可扩展性强。

    标准定义数据

    合理的业务模型设计对ETL至关重要。数据仓库是企业唯一、真实、可靠的综合数据平台数据仓库的设计建模一般都依照三范式、星型模型、雪花模型,无论哪种设计思想,都应该最大化地涵盖关键业务数据,把运营环境中杂乱无序的数据结构统一成为合理的、关联的、分析型的新结构,而ETL则会依照模型的定义去提取数据源,进行转换、清洗,并最终加载到目标数据仓库中。
    模型的重要之处在于对数据做标准化定义,实现统一的编码、统一的分类和组织。标准化定义的内容包括:标准代码统一、业务术语统一。ETL依照模型进行初始加载、增量加载、缓慢增长维、慢速变化维、事实表加载等数据集成,并根据业务需求制定相应的加载策略、刷新策略、汇总策略、维护策略。

    拓展新型应用

    对业务数据本身及其运行环境的描述与定义的数据,称之为元数据(metadata)。元数据是描述数据的数据。从某种意义上说,业务数据主要用于支持业务系统应用的数据,而元数据则是企业信息门户、客户关系管理、数据仓库、决策支持和B2B等新型应用所不可或缺的内容。
    元数据的典型表现为对象的描述,即对数据库、表、列、列属性(类型、格式、约束等)以及主键/外部键关联等等的描述。特别是现行应用的异构性与分布性越来越普遍的情况下,统一的元数据就愈发重要了。“信息孤岛”曾经是很多企业对其应用现状的一种抱怨和概括,而合理的元数据则会有效地描绘出信息的关联性。
    元数据对于ETL的集中表现为:定义数据源的位置及数据源的属性、确定从源数据到目标数据的对应规则、确定相关的业务逻辑、在数据实际加载前的其他必要的准备工作,等等,它一般贯穿整个数据仓库项目,而ETL的所有过程必须最大化地参照元数据,这样才能快速实现ETL。

    7ETL体系结构编辑

    下图为ETL体系结构,它体现了主流ETL产品框架的主要组成部分。ETL是指从源系统中提取数据,转换数据为一个标准的格式,并加载数据到目标数据存储区,通常是数据仓库
    ETL体系结构图
    Design manager 提供一个图形化的映射环境,让开发者定义从源到目标的映射关系、转换、处理流程。设计过程的各对象的逻辑定义存储在一个元数据资料库中。
    Meta data management 提供一个关于ETL设计和运行处理等相关定义、管理信息的元数据资料库。ETL引擎在运行时和其它应用都可参考此资料库中的元数据
    Extract 通过接口提取源数据,例如?ODBC、专用数据库接口平面文件提取器,并参照元数据来决定数据的提取及其提取方式。
    Transform 开发者将提取的数据,按照业务需要转换为目标数据结构,并实现汇总。
    Load 加载经转换和汇总的数据到目标数据仓库中,可实现SQL或批量加载。
    Transport services 利用网络协议或文件协议,在源和目标系统之间移动数据,利用内存在ETL处理的各组件中移动数据。
    Administration and operation 可让管理员基于事件和时间进行调度、运行、监测ETL作业、管理错误信息、从失败中恢复和调节从源系统的输出。

    8理想的数据集成平台编辑

    数据集成平台必须解决企业间数据碎片的问题,以更快地做出数据驱动型业务决策和更有效有力地进行业务运作。它必须作为企业技术基础提供服务,提供容易掌控的方法来集成数据。
    要满足这些需求,数据集成平台必须具备四个特性:全面、统一、开放和经济。
    全面
    理想的数据集成平台必须具备全面的功能集,使您的 IT 机构可以根据要求随时随地为企业提供可以信赖的数据。借助一整套可随意支配的数据集成功能,IT 机构的生产效率可以获得数十倍的提升。
    支持完整的数据集成生命周期
    数据集成平台必须支持数据集成生命周期中的所有五个关键步骤:访问、发现、 清洗、集成和交付(见图 4)。
    第 1 步:访问 大多数机构的数据存储在数千个位置,不只限于企业内部,还存放在防火墙外的业务合作伙伴或 SaaS 供应商的“云”中。无论何种来源或结构,所有数据都必须可以接受访问。必须从隐秘的大型主机系统、关系数据库、应用程序、XML、消息甚至从电子数据表之类的文档中提取数据。
    第 2 步:发现数据源- 特别是记录不详尽或来源未知 - 必须探查才能了解其内容和结构。需要推断数据中隐含的模式和规则。必须标记潜在的数据质量问题。
    第 3 步:清洗 必须清洗数据以确保其质量、准确性和完整性。必须解决错误或疏漏问题。必须强制执行数据标准,并且对值进行验证。必须删除重复的数据条目。
    第 4 步:集成 要跨越多个系统保持一致的数据视图,必须集成并转换数据, 以便协调不同系统在定义各种数据元素并使之结构化的方式上存在的差异。例如,对于“客户盈利”,营销系统和财务系统可能具有完全不同的业务定义和数据格式,这些差异必须得到解决。
    第 5 步:交付 必须以适当的格式、在适当的时间将适当的数据交付给所有需要数据的应用程序和用户。交付数据的范围涵盖从支持实时业务运营的单个数据元素或记录到用于趋势分析和企业报告的数百万个记录。必须确保数据的高可用性和交付安全性。
    此外,数据集成平台还必须:
    审计、管理和监控 数据管理员和 IT 管理员需要协作进行审计、管理和监控数据。不断地对关键指标(例如数据质量)进行衡量,随着时间的推移这些指标会得到有目共睹的稳步提高。这是为了跟踪关键数据属性的进度,并标记任何新问题,以便在将数据传回数据集成生命周期之后,可以解决这些问题并不断改进。
    定义、设计和开发 业务分析师、数据架构师和 IT 开发人员需要一套功能强大的工具来帮助他们在定义、设计和开发数据集成规则与流程上展开合作。数据集成平台应包括一套常用的集成工具,以确保所有人员一起有效工作。实现任何数据集成项目
    数据集成平台必须足够可靠、灵活和可扩展,以处理任何一类型的数据集成项目,其中包括:
    测试数据管理和存档 ·
    B2B Data Exchange ·
    从单个部门的数据仓库项目到全局数据迁移项目,您的 IT 机构可以一次性展开许多类型的数据集成项目。您的团队需要能够从小规模的一个项目类型入手,然后在接下来的项目中重复运用相同的技术和资产- 通过共享元数据实现。
    数据集成平台需要能够处理分析数据集成(报告和分析),还要能够处理运营数据集成(与运营执行相关的业务流程)。
    以任何周期提供数据
    对于数据集成,存在跨度很广的一系列时间范围和周期要求,这取决于应用程序和使用案例。某些项目要求按月或按周集成数据;而另外一些项目需要按秒提供集成的数据。IT 机构需要能够灵活更改周期要求,而不必重新构建整个基础结构。
    如图 5 所示,理想的数据集成平台必须在整个周期范围内提供支持、根据应用程序或用户需要随时提供可信任的数据- 无论以实时、批量还是变更数据捕获 (CDC)的方式。
    统一
    单个的统一数据集成平台可大大简化 IT 团队的工作。当您具备扩展型企业(从单一供应商发展成)所需的所有数据集成能力时,您通过基于角色的协作、共享元数据和单一的统一运行时引擎,最大限度地提高了工作效率。
    基于角色的协作
    数据集成项目包括充当多个角色的 IT 和业务人员。他们都肩负着有待完成、差别很大的任务,可以提供不同的技能。每个角色都需要一套特别为其设计的不同工具。同时,项目团队成员必须精诚合作、共同承担工作和任务,以提高跨团队的工作效率并确保 IT 和业务部门的协调。
    如图 6 所示,理想的数据集成平台提供角色专用的工具,这些工具专门针对每人的技能和任务而设计。这些角色专用的工具拥有一致的界面。这些工具拥有相同的界面和使用感受,并且相互集成。因此,它们易学易用。通过跨越不同数据集成项目重复使用资产,团队成员能够快速启动运行并保持高效。
    共享元数据
    数据集成平台必须提供共享的元数据。平台内的每个工具必须能够访问有关数据存储位置的元数据以及与其关联的业务规则和逻辑。借助共享的元数据,大家可以共同处理同一件事。分析师和开发人员可以处理不同类型的元数据或者用不同方式查看相同的元数据,并仍然保持有效协作。元数据保持一致,并且每个用户均能轻松查看潜在的更改会带来的影响。
    统一的运行时引擎
    数据集成平台的关键是单个的运行时引擎。组成平台的各个单独的产品应全都在简化实施、管理和维护的相同引擎上运行。单个引擎确保可以更为方便地升级多个版本。平台必须为企业级部署而设计,具备可靠的可扩展性、可用性和安全性,这样您可以在该平台上放心开展业务。
    开放
    开放、中立的数据集成平台旨在能够在您当前的 IT 环境中兼容一切 -您的硬件、软件、技术标准,以及未来您要添加的任何内容。开放的平台能保护您的企业免受有关供应商瓶颈的风险。
    访问任何来源的数据
    大多数机构以数百种不同格式来存储数据:企业应用程序、数据库、平面文件消息队列、电子数据表和其它文档。如图 7 所示,数据集成平台必须处理任何数据类型或格式,包括任何来源的结构化和非结构化数据和所有主数据类型,例如客户数据、产品数据和财务数据。
    越来越多的数据迁移要跨越公司防火墙和“移入云”。随着更多公司依赖人力资源应用程序和 CRM 应用程序的 SaaS 提供商,云计算变得更为主流。数据集成平台必须能够访问驻留在企业外部的数据。这包括来自多个业务实体的数据和分布在许多不同地理位置和国家/地区的数据。
    降低风险
    IT 格局正在改变。这导致不确定性。IT 机构需要采用策略来降低这种变化带来的风险。您需要一个数据集成平台,它支持从操作系统到数据库的当前所有技术标准。它必须是开放式的,确保能够与现有或将来可能配置的一切内容兼容。这包括在您的企业与“云”中或合作伙伴的全部各种应用程序和数据源。
    经济
    经济的数据集成平台能够带来尽可能低的总拥有成本 (TCO) 和最快最高的投资回报 (ROI)。在当前严峻的经济环境下,现在和将来的每笔技术投资都要接受严格审查,评估其帮助 IT 机构和业务的能力,因此这些因素目前显得特别重要:
    降低成本 ·
    更为高效地运营 ·
    快速产生价值 ·
    更低的总拥有成本
    数据集成平台必须提供易用的工具和可靠的可扩展能力与性能,以缩减前期费用、削减持续的维护和管理成本并快速产生价值。企业可以部署用于特定数据集成项目的平台,然后对平台进行扩展,用其解决其它项目,而不必在其它工具或培训上破费。简而言之,数据集成平台能让您的 IT 机构事半功倍。
    更快的投资回报
    在数据集成平台中获得快速的投资回报取决于您能否迅速行动并投入使用。您需要增加 IT 资源。
    了解 Informatica 的开发人员比了解市场上其它任何数据集成软件的开发人员多三倍以上。因此,寻找熟练且实惠的 Informatica 资源来帮助您完成项目会比较容易。 Informatica 技术网络通过在线协作社区为这些开发人员提供支持,在线协作社区提供有在线论坛,用于社区成员和 Informatica 之间的互动性信息交流、资源共享和公开反馈。这是一个非常活跃的网络,拥有超过 46,000 名遍布世界各地的成员。加快投资回报的另一个方法是创建集成能力中心,以在整个企业范围内支持更多集成方案。ICC 是一个共享的 IT 服务,旨在提供人员、流程和技术来支持整个企业的各类集成方案。

    9应用中的Informatica 平台编辑

    现在让我们查看 Informatica 平台如何帮助不同行业和地理位置的四家公司提高工作效率、最大化技术投资效益并降低成本。
    T. Rowe Price 是一家跨国投资管理公司,以范围广泛的共有基金形式持有超过 3340 亿美元的资产。随着金融行业变得愈加复杂、竞争更为激烈、监管更为严格,公司需要更为有效地管理更多数据。为改善客户服务、确保一致的 IT 环境并符合数据治理法规,T. Rowe Price 决定创建由 Informatica 平台提供支持的 ICC。公司制定出标准、安全策略和发布方法,然后创建了数据管理程序,以从业务和 IT 部门招集参与者。从数据仓库开始,公司将 Informatica 平台的使用逐步扩大到其它集成项目。最终,T. Rowe Price 取得这些成果:
    1. 更高的员工效率。IT 团队在首年即同时启动 12 个数据集成项目。到第五年,此记录已增加到一次性处理 60 个项目。
    2. 使技术投资发挥到极致。通过将流程和过程标准化来促进重复使用已实现高达 ICC 团队自身成本的两倍以上的累计效益和成本节省。
    3. 降低成本。T. Rowe Price 使用 Informatica 平台,在第二年即已开始实现收回成本后的净效益,五年间更是实现了可观的效益。大多数节省额归功于削减新开发、持续的编码维护和影响分析的成本。
    Duke Energy 在 2006 年与一个竞争对手合并,成为美国最大的电力控股公司之一,拥有分布在卡罗来纳州、肯塔基州、俄亥俄州和印第安纳州的超过 400 万客户。随着合并完成,公用事业公司紧接着需要整合广为分散的多个不同数据集。它还需要确保具有保持高效运营所必需的一致、准确和及时的业务信息。
    Duke Energy 求助于 Informatica 平台来创建最佳实践、削减成本并加快上市。通过消除点对点接口并创建集成的数据管理体系结构,公司顺利完成合并,并为未来的计收购铺好道路。
    依靠 Informatica 平台,Duke Energy 能够:
    1. 提高运营效率。通过可以从公司交易系统中删除数据管理和报告的单个数据集成平台,Duke Energy 可以更为迅速地为经理们提供各种类型数据的高级视图。它还完成了更多的项目:仅在部署后的前六个月,就已检查 31 个项目,实施 8 个项目。
    2. 使技术投资发挥最大效益。由于 Informatica技术平台专为与广泛的各种源系统兼容而设计,因此 Duke Energy 可以轻松扩展以整合未来合并所带来的数据,而无需中断业务报告。
    3. 降低成本。Duke Energy 每年将从整合、集中化和缩减运营成本中节省 150 万美元。此外,它还有望在接下来的两年中节省额外 300 万美元的运营和维护费用,而完成下一次合并收购所需的成本预计将比上一次少一半。KPN 是西欧一家市值 195 亿美元的电话、互联网和电视服务提供商,主要在荷兰、德国和比利时开展业务。这家通信公司要为其超过 3500 万的客户提供优质服务 - 但是各类客户数据存储在 50 多个独立的应用程序中,销售和服务代表无法始终了解他们交谈的对象,更无法考虑如何为这些客户提供帮助或额外服务。为改善客户服务并提高运营效率,KPN 决定将跨越多个业务单位的所有客户数据与按功能分隔的系统集成起来。作为 Informatica 的长期客户,KPN 决定扩展 Informatica 平台,以清洗、同步和加载其所有主数据到新的 CRM 解决方案。
    借助 Informatica,KPN 员工现在已拥有唯一的、全面的、保持最新并呈现每位客户关系的视图。最终,公司达到这些目标:
    1. 更高效率。由于可以在呼叫中心快速访问准确的实时数据,因此客户服务代表可以少用 10% 的时间来处理每个电话,并且仍然可以更为有效地开展交叉销售和提升销售,工作效率提高 5%,而从每位用户获得的平均收入增加 5%。
    2. 更高技术投资回报。由于 KPN 曾在企业的其它地方使用 Informatica 平台,因此KPN 只需将平台简单扩展到新项目。KPN 可以按时、按预算地轻松完成 CRM 实施,从而快速实现价值。
    3. 降低成本。对详细客户数据的实时访问使 KPN 能够将客户流失每年降低 10%。此外,改善数据质量并使之自动化降低了 IT 维护费用。
    1.I
    IT 机构转变成数据驱动型企业的目标
    那些成功抵御经济衰退期的企业都是能随机应变应对局势变化的企业。在竞争格局、市场和经济发生变化时,这些企业能够迅速采取行动并充分利用机遇。
    这些企业需要数据 - 在适当的时间获得拥有毋庸置疑的质量的合适数据。依 Gartner 所见,“信息的战略使用决定企业竞争和获胜的能力。 2这些企业在很大程度上需要依赖它们的 IT 机构。IT 部门在帮助其企业转为数据驱动型企业方面扮演着关键角色。全面、统一、开放和经济的数据集成平台使 IT 部门能够应付自如。这样的数据集成平台为更高效、有效和实惠的数据访问提供了坚实的基础。它是及时、可信任数据流的生命线。这让 IT 机构能够支持企业度过经济低潮期,使企业在经济好转时更为强大、更为灵活并更具有竞争力。
    通过让您的 IT 机构实现以下目标,Informatica 平台可以帮助您转变为数据驱动型企业:
    · 访问、发现、清洗、集成并为扩张的企业及时提供可信任的数据- 随时随地提供任何数据
    · 支持数据集成流程中涉及的所有角色
    · 处理所有类型的数据集成和数据质量项目
    · 与现有和将来可能添加的所有系统和流程兼容
    经过成千上万个实际部署验证,Informatica 平台确实能够帮助 IT 机构降低成本、 提高效率并为企业带来更多价值。
    展开全文
  • etl

    2017-09-07 14:16:56
    ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。 ETL是BI项目重要的一个环节。 通常情况下,在BI项目中...

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

      ETL的设计分三部分:数据抽取、数据的清洗转换、数据的加载。在设计ETL的时候我们也是从这三部分出发。数据的抽取是从各个不同的数据源抽取到ODS(Operational Data Store,操作型数据存储)中——这个过程也可以做一些数据的清洗和转换),在抽取的过程中需要挑选不同的抽取方法,尽可能的提高ETL的运行效率。ETL三个部分中,花费时间最长的是“T”(Transform,清洗、转换)的部分,一般情况下这部分工作量是整个ETL的2/3。数据的加载一般在数据清洗完了之后直接写入DW(Data Warehousing,数据仓库)中去。

      ETL的实现有多种方法,常用的有三种。一种是借助ETL工具(如Oracle的OWB、SQL Server 2000的DTS、SQL Server2005的SSIS服务、Informatic等)实现,一种是SQL方式实现,另外一种是ETL工具和SQL相结合。前两种方法各有各的优缺点,借助工具可以快速的建立起ETL工程,屏蔽了复杂的编码任务,提高了速度,降低了难度,但是缺少灵活性。SQL的方法优点是灵活,提高ETL运行效率,但是编码复杂,对技术要求比较高。第三种是综合了前面二种的优点,会极大地提高ETL的开发速度和效率。

      一、 数据的抽取(Extract)

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

      1、对于与存放DW的数据库系统相同的数据源处理方法

      这一类数据源在设计上比较容易。一般情况下,DBMS(SQLServer、Oracle)都会提供数据库链接功能,在DW数据库服务器和原业务系统之间建立直接的链接关系就可以写Select 语句直接访问。

      2、对于与DW数据库系统不同的数据源的处理方法

      对于这一类数据源,一般情况下也可以通过ODBC的方式建立数据库链接——如SQL Server和Oracle之间。如果不能建立数据库链接,可以有两种方式完成,一种是通过工具将源数据导出成.txt或者是.xls文件,然后再将这些源系统文件导入到ODS中。另外一种方法是通过程序接口来完成。

      3、对于文件类型数据源(.txt,.xls),可以培训业务人员利用数据库工具将这些数据导入到指定的数据库,然后从指定的数据库中抽取。或者还可以借助工具实现。

      4、增量更新的问题

      对于数据量大的系统,必须考虑增量抽取。一般情况下,业务系统会记录业务发生的时间,我们可以用来做增量的标志,每次抽取之前首先判断ODS中记录最大的时间,然后根据这个时间去业务系统取大于这个时间所有的记录。利用业务系统的时间戳,一般情况下,业务系统没有或者部分有时间戳。

    二、数据的清洗转换(Cleaning、Transform)

      一般情况下,数据仓库分为ODS、DW两部分。通常的做法是从业务系统到ODS做清洗,将脏数据和不完整数据过滤掉,在从ODS到DW的过程中转换,进行一些业务规则的计算和聚合。

      1、 数据清洗

      数据清洗的任务是过滤那些不符合要求的数据,将过滤的结果交给业务主管部门,确认是否过滤掉还是由业务单位修正之后再进行抽取。

    不符合要求的数据主要是有不完整的数据、错误的数据、重复的数据三大类。

      (1)不完整的数据:这一类数据主要是一些应该有的信息缺失,如供应商的名称、分公司的名称、客户的区域信息缺失、业务系统中主表与明细表不能匹配等。对于这一类数据过滤出来,按缺失的内容分别写入不同Excel文件向客户提交,要求在规定的时间内补全。补全后才写入数据仓库。

      (2)错误的数据:这一类错误产生的原因是业务系统不够健全,在接收输入后没有进行判断直接写入后台数据库造成的,比如数值数据输成全角数字字符、字符串数据后面有一个回车操作、日期格式不正确、日期越界等。这一类数据也要分类,对于类似于全角字符、数据前后有不可见字符的问题,只能通过写SQL语句的方式找出来,然后要求客户在业务系统修正之后抽取日期格式不正确的或者是日期越界的这一类错误会导致ETL运行失败,这一类错误需要去业务系统数据库用SQL的方式挑出来,交给业务主管部门要求限期修正,修正之后再抽取。

      (3)重复的数据:对于这一类数据——特别是维表中会出现这种情况——将重复数据记录的所有字段导出来,让客户确认并整理。

      数据清洗是一个反复的过程,不可能在几天内完成,只有不断的发现问题,解决问题。对于是否过滤,是否修正一般要求客户确认,对于过滤掉的数据,写入Excel文件或者将过滤数据写入数据表,在ETL开发的初期可以每天向业务单位发送过滤数据的邮件,促使他们尽快地修正错误,同时也可以做为将来验证数据的依据。数据清洗需要注意的是不要将有用的数据过滤掉,对于每个过滤规则认真进行验证,并要用户确认。

      2、 数据转换

      数据转换的任务主要进行不一致的数据转换、数据粒度的转换,以及一些商务规则的计算。

      (1)不一致数据转换:这个过程是一个整合的过程,将不同业务系统的相同类型的数据统一,比如同一个供应商在结算系统的编码是XX0001,而在CRM中编码是YY0001,这样在抽取过来之后统一转换成一个编码。

      (2)数据粒度的转换:业务系统一般存储非常明细的数据,而数据仓库中数据是用来分析的,不需要非常明细的数据。一般情况下,会将业务系统数据按照数据仓库粒度进行聚合。

      (3)商务规则的计算:不同的企业有不同的业务规则、不同的数据指标,这些指标有的时候不是简单的加加减减就能完成,这个时候需要在ETL中将这些数据指标计算好了之后存储在数据仓库中,以供分析使用。

    三、ETL日志、警告发送

      1、 ETL日志

      ETL日志分为三类。

    一类是执行过程日志,这一部分日志是在ETL执行过程中每执行一步的记录,记录每次运行每一步骤的起始时间,影响了多少行数据,流水账形式。

    一类是错误日志,当某个模块出错的时候写错误日志,记录每次出错的时间、出错的模块以及出错的信息等。

    第三类日志是总体日志,只记录ETL开始时间、结束时间是否成功信息。如果使用ETL工具,ETL工具会自动产生一些日志,这一类日志也可以作为ETL日志的一部分。

    记录日志的目的是随时可以知道ETL运行情况,如果出错了,可以知道哪里出错。

      2、 警告发送

      如果ETL出错了,不仅要形成ETL出错日志,而且要向系统管理员发送警告。发送警告的方式多种,一般常用的就是给系统管理员发送邮件,并附上出错的信息,方便管理员排查错误。

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

    后记

         做数据仓库系统,ETL是关键的一环。说大了,ETL是数据整合解决方案,说小了,就是倒数据的工具。回忆一下工作这么长时间以来,处理数据迁移、转换的工作倒还真的不少。但是那些工作基本上是一次性工作或者很小数据量。可是在数据仓库系统中,ETL上升到了一定的理论高度,和原来小打小闹的工具使用不同了。究竟什么不同,从名字上就可以看到,人家已经将倒数据的过程分成3个步骤,E、T、L分别代表抽取、转换和装载。

    其实ETL过程就是数据流动的过程,从不同的数据源流向不同的目标数据。但在数据仓库中,

    ETL有几个特点,

    一是数据同步,它不是一次性倒完数据就拉到,它是经常性的活动,按照固定周期运行的,甚至现在还有人提出了实时ETL的概念。

    二是数据量,一般都是巨大的,值得你将数据流动的过程拆分成E、T和L。

        现在有很多成熟的工具提供ETL功能,且不说他们的好坏。从应用角度来说,ETL的过程其实不是非常复杂,这些工具给数据仓库工程带来和很大的便利性,特别是开发的便利和维护的便利。但另一方面,开发人员容易迷失在这些工具中。举个例子,VB是一种非常简单的语言并且也是非常易用的编程工具,上手特别快,但是真正VB的高手有多少?微软设计的产品通常有个原则是“将使用者当作傻瓜”,在这个原则下,微软的东西确实非常好用,但是对于开发者,如果你自己也将自己当作傻瓜,那就真的傻了。ETL工具也是一样,这些工具为我们提供图形化界面,让我们将主要的精力放在规则上,以期提高开发效率。从使用效果来说,确实使用这些工具能够非常快速地构建一个job来处理某个数据,不过从整体来看,并不见得他的整体效率会高多少。问题主要不是出在工具上,而是在设计、开发人员上。他们迷失在工具中,没有去探求ETL的本质。可以说这些工具应用了这么长时间,在这么多项目、环境中应用,它必然有它成功之处,它必定体现了ETL的本质。如果我们不透过表面这些工具的简单使用去看它背后蕴涵的思想,最终我们作出来的东西也就是一个个独立的job,将他们整合起来仍然有巨大的工作量。大家都知道“理论与实践相结合”,如果在一个领域有所超越,必须要在理论水平上达到一定的高度.
    展开全文

空空如也

1 2 3 4 5 ... 20
收藏数 12,793
精华内容 5,117
关键字:

etl