ETL和元数据
ETL
ETL目录[隐藏]简介作用简介ETL,Extraction-Transformation-Loading的缩写,中文名称为数据提取、转换和加载。
ETL工具有:OWB(Oracle Warehouse Builder)、ODI(Oracle Data Integrator)、I nformatic PowerCenter、DataStage、Repository Explorer、Beeload、Kettle。
作用ETL负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。
ETL是数据仓库中的非常重要的一环。
它是承前启后的必要的一步。
相对于关系数据库,数据仓库技术没有严格的数学理论基础,它更面向实际工程应用。
所以从工程应用的角度来考虑,按着物理数据模型的要求加载数据并对数据进行一些系列处理,处理过程与经验直接相关,同时这部分的工作直接关系数据仓库中数据的质量,从而影响到联机分析处理和数据挖掘的结果的质量。
数据仓库是一个独立的数据环境,需要通过抽取过程将数据从联机事务处理环境、外部数据源和脱机的数据存储介质导入到数据仓库中;在技术上,ETL主要涉及到关联、转换、增量、调度和监控等几个方面;数据仓库系统中数据不要求与联机事务处理系统中数据实时同步,所以ETL可以定时进行。
但多个ETL的操作时间、顺序和成败对数据仓库中信息的有效性至关重要。
ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程)作为BI/ DW(Business Intelligence)的核心和灵魂,能够按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。
如果说数据仓库的模型设计是一座大厦的设计蓝图,数据是砖瓦的话,那么E TL就是建设大厦的过程。
ETL的主要步骤
第五步:聚合表初始生成
许多数据仓库的前端应用,并非直接使用主题星型模型中的事实表数据,而是聚合表中汇总,运算好的数据。(Oracle OLAP Service所建立的ROLAP 和数据集市实际上也是使用一系列的经过大量预先计算得到的聚合表)
增量导入
第一步: 缓慢变化维表数据装载
每天将所有变化过的维度信息刷新到数据仓库中,维表数据的刷新必须现于事实表。
a、针对数据现状,初始导入有这样一些问题需要考虑:
1、如何解决时间差异性?
2、如何解决平台差异性?
3、如何适应数据的不稳定性?
4、如何解决数据依赖性?
b、数据刷新的策略要根据业务需求和应用系统的承受能力和数据情况决定。主要有这样一些问题需要考虑:1、如何解决时间差异性?
2、如何适应数据的不稳定性?
2)数据库超集
3)在ETL前详细调查源的字符集,落地解析的字符集以及目的地字符集,如果这个过程
是字符集的子集或者超集那就最好,不是的话就要评估数据的损失量或者制定ASCII的
转换机制(字符集是将‘字’存储为ASCII码,而这个ASCII码在另个字符集展现中是什么样子)
4)
B、数据量的准确性——使用ETL工具的质量监控工具就那么准么?我可遇到过不准的情况哦。
3)制定严格的etl规则,符合规则的数据抽取到数据仓库中来,不符合规则的数据不在业务范畴之内。
C、discard的数据怎么重新能够加载回目的数据库中(ETL已经完毕了,并不是所有的数据能够重新加载进取的)。
1)不符合条件数据的维度值给以一些缺省值,一般情况下流水作业很难重新补登再入库。
2)a.制定手工更改抽取的指标;b.启用前一天业务数据备份,在另一个环境下在人为的干预下重新跑一次
数据仓库分层建设的基本思路
数据仓库分层建设的基本思路
数据仓库分层建设的基本思路如下:
1. 数据源层:这是数据仓库的基础,包含了各种原始数据,来自不同的业务系统、数据库、文件等。
2. 数据存储层:数据经过抽取、转换和加载(ETL)过程后,被存储在这一层。
它可以是关系型数据库、列式存储、NoSQL 数据库或数据湖泊等。
3. 数据处理层:在这一层,对数据进行清洗、转换、脱敏、标准化等处理,以提高数据质量和可用性。
4. 数据集市层:根据不同的业务主题或部门需求,将处理后的数据组织成数据集市。
数据集市通常是针对特定主题或业务领域的数据集合。
5. 数据应用层:这是数据仓库的顶层,为用户提供各种数据分析和应用工具,如报表、仪表盘、数据挖掘、机器学习等。
6. 元数据管理层:元数据用于描述数据仓库中的数据、处理过程和数据模型等信息。
元数据管理层负责管理和维护元数据,确保数据的一致性和可追溯性。
7. 数据质量管理层:数据质量是数据仓库的关键要素之一。
这一层负责监控和管理数据质量,包括数据清洗、数据验证、数据监控等。
通过分层建设,数据仓库可以更好地组织和管理数据,提高数据的质量和可用性,满足不同用户的需求。
同时,分层结构也有利于数据仓库的扩展、维护和性能优化。
在实际建设过程中,可以根据具体业务需求和数据特点,对分层结构进行适当调整和优化。
元数据驱动ETL的研究
Ab ta t Wi e e eo me t f a rh u e E L E t c T a s r a o dL a ) l s o t t t s np o e s gd t sr c : t t v lp n t wae o s , T ( x a t rn fm t na o d ae oi r n e r c si a hh d o da r o i n mp a s p i n a
t r v eE y tm’ tbl drl bl , de a l sr oc nr lh r c s yman iigmea aa oi o et TL S se S a it a ei ii a n beu est o to ep o esb it nn td t. mp h s i n y a t n y t a
wh l u l i g a d t r h u e A tb ea d r l b e E y t m sd p n e n t e o e a l e i n Ba eo e ta i o a TL, h s i b i n aa wa e o s . s l n e i l TL s se i e e d d o h v r l d sg . s n t d t n l e d a a h r i E ti
Ke r s E t c T asomainadL a ( T ) dt rh ueme d t; QLe g e p ca e n ie y wo d : x at r fr t n o d E L ; a waeo s; t a S i ;ak g gn r , n o a a a nn e
C m ue n ier ga d p l ain 计算机 工程与应 用 o p t E gnei A p i t s r n n c o
数据治理技术栈
数据治理技术栈数据治理技术栈是指在数据治理过程中所使用的一系列技术工具和平台,用于管理、保护、优化和利用企业数据资源。
它包括了数据质量管理、元数据管理、数据安全与隐私保护、数据集成与ETL、大数据处理与分析等多个方面。
1. 数据质量管理在数据治理中,保证数据的质量是至关重要的。
因此,需要使用一些工具来帮助我们识别和解决潜在的问题。
例如,一些常用的工具包括:Talend Data Quality、Informatica Data Quality以及IBM InfoSphere QualityStage等。
2. 元数据管理元数据是描述企业中各种信息资源的信息,包括了其定义、结构、属性以及关系等。
元数据管理可以帮助我们更好地理解和利用企业中的信息资源。
常见的元数据管理工具有:Collibra、Informatica Metadata Manager以及IBM InfoSphere Information Governance Catalog等。
3. 数据安全与隐私保护在现代企业中,对于敏感信息的保护变得越来越重要。
因此,在进行任何形式的处理之前,需要确保所有敏感信息都得到了妥善地保护。
为此,许多企业使用了一些专门的安全工具来确保其敏感信息不被泄露。
例如,一些常用的工具包括:IBM InfoSphere Guardium、Oracle Advanced Security以及Trend Micro Data Protection等。
4. 数据集成与ETL数据集成是指将来自不同来源的数据整合在一起,以便更好地管理、分析和利用这些数据。
ETL(Extract, Transform, Load)是其中一种常见的数据集成方法。
它可以帮助我们从不同的数据源中提取、转换和加载数据。
常见的ETL工具有:Talend Open Studio、Informatica PowerCenter以及Microsoft SQL Server Integration Services等。
ETL培训详解
数据存储 ETL系统
CRM
ETL 过程
暂存 区
ETL 过 程
ETL 中心数 过 据仓库 程
数据集 市
SCM
…
数据集 市
数 据 服 务 平 台
报表 仪表板
决策人员
ETL过程
即席查询 …
管理人员
BI工具 主数据管理 元数据管理
操作人员
ETL架构原理
ETL介绍
• ETL模型主要描述了从各个数据源中抽取数据、转换数据并加载到数据仓库 的各个环节及流程,主要功能有数据抽取规则、数据抽取频率、数据校验、 数据转换规则、数据质量检查、错误处理、记录ETL日志、调度任务设置等。 1.从哪里抽取什么样的数据,即抽取规则。要支持增量抽取,即每次抽取只抽 取上次抽取后变化的数据。在复杂情况下,还需要检查上次抽取后修改或者 删除的数据,并依据数据安全策略进行相应的处理; 2.数据抽取频率即什么时间抽取,即抽取时间设置,确定每天晚上12点抽取, 或者每1小时正点时抽取1次,等等; 3.数据校验,确定每个抽取的数据是否是有效的,是否是没有缺陷的,是否需 要补充内容等; 4.数据转换规则,即源数据怎样转化成需要的数据的,经过什么样的计算、拆 分、合并等等;本数据转换完后,需要触发哪些数据的ETL过程; 5.数据质量检查,可以采用对账等方式对转换完后的数据进行统一检查,保证 数据的抽取质量; 6.错误处理,如果转换过程中出现错误,需要进行统一的、相应的处理,给出 明确的业务描述,记录错误日志,并发到系统信息中心; 7.记录ETL日志,包括转换的时间,数据源是哪个,转化的数据种类,转换的源 数据是哪些,对应的目标数据是哪些,等等。
Kettle使用及练习—Job
• 任务菜单介绍: B 核心对象: Job entries:一个Job中引用的环节列表 Job entries菜单列出的是Job中可以 调用的环节列表,可以通过鼠标拖动 的方式对环节进行添加。 每一个环节可以通过鼠标拖动来将 环节添加到主窗口中。 并可通过shift+鼠标拖动, 实现环节之间的连接。
数据模型-ETL-元数据
数据转换
原则上,数据转换只处理规律而重复性 大的数据聚合; 如汇总、取平均值、找最大最小值等, 而不用于复杂计算,以减少开发成本和 系统负载。
对于不规律而且复杂的计算,可由源系 统端将数据计算好。
数据加载——刷新
(1)刷新(Refresh):数据仓库数据表 中只包括最新的数据,每次加载均删除原 有数据,然后完全加载最新的源数据。 如大多数参数表的加载都采用这种模式。
表2 一些厂商提供的数据仓库工具
公司名称 IBM Oracle Sybase CA
ETL工具 Warehouse Manager Oracle ETL Server Replication Server PowerStage InfoPump
数据仓库管理工具 Visual Warehouse Enterprise Manager Warehouse Studio PLATINUM ERWin PLATINUM InfoPump Warehouse Administrator SQL Server
对于非计算机专业的用户而言,比较直 观
星型结构的缺点
当事务问题发生变化,原来的维不能满 足要求时,需要增加新的维,这种变化 带来数据变化将是非常复杂、非常耗时 的。
雪花模型
它是对星型模型的扩展,每一个维度都 可以向外连接多个详细类别表。
详细类别表对事实表在有关维进行详细 的描述,达到缩小事实表和提高查询效 率的目的。
维表:用于描述事实表,大多为文字描述、
种类、低于、时间、产品、客户等类型的 数据。
事实表的的主键由所有维表的主键组成
图2 零售业营销分析的星型图
星型结构的优点
数据仓库设计步骤
数据仓库设计步骤数据仓库是一个用于集中存储、管理和分析大量数据的系统。
它的设计过程是一个复杂的任务,需要经历多个步骤。
下面是数据仓库设计的主要步骤:1.需求分析:首先,需要与业务用户和利益相关者合作,了解业务需求和目标。
这包括理解他们的数据分析需求、业务流程和决策支持要求。
这一步骤有助于确定数据仓库应该包含哪些数据和所需的数据分析功能。
2.数据源分析:在这一步骤中,需要识别和分析所有可用的数据源,包括内部和外部系统。
需要评估这些数据源的数据质量、结构和可用性,以确定应该选择哪些数据源。
3.数据抽取、转换和加载(ETL):在这个步骤中,需要确定如何从不同的数据源中提取数据,并将其转换为适合数据仓库的格式。
这包括数据清洗、数据集成和数据转换等过程。
ETL过程还应该能够处理数据的增量更新和历史数据的保留。
4.数据模型设计:在这一步骤中,需要设计数据仓库的逻辑模型和物理模型。
逻辑模型通常使用维度建模技术,包括维度表和事实表来描述数据。
物理模型则定义了如何将逻辑模型映射到实际的存储结构,包括数据库表和索引设计等。
5.数据仓库架构设计:在这一步骤中,需要确定数据仓库的整体架构。
这包括确定数据仓库的结构、数据存储和访问机制。
需要考虑到数据仓库的可伸缩性、性能和可用性等方面。
6.数据仓库实施:在这个步骤中,需要根据设计的数据模型和架构来实施数据仓库。
这包括创建数据库表、索引、视图等。
还需要实施ETL过程和相关的数据访问工具。
7.数据质量管理:数据质量是数据仓库设计中一个重要的方面。
在这一步骤中,需要定义数据质量规则和度量,并实施数据质量管理的过程。
这包括数据清洗、数据验证和数据监控等活动。
8.元数据管理:在数据仓库中,元数据是描述数据的数据。
在这一步骤中,需要定义和管理元数据,以便用户能够理解数据的含义和含义。
这包括建立元数据仓库、元数据标准和元数据管理工具等。
9.安全和访问控制:在这一步骤中,需要制定数据仓库的安全策略和访问控制机制。
数据仓库的源数据类型
数据仓库的源数据类型数据仓库是一个用于集成、存储和管理企业各类数据的系统。
在构建数据仓库时,源数据的类型是非常重要的,因为它决定了数据仓库能够处理和分析的数据范围。
下面将详细介绍数据仓库中常见的源数据类型。
1. 结构化数据:结构化数据是指具有固定格式和预定义模式的数据。
这种类型的数据通常以表格形式存储,每个数据项都有明确的定义和类型。
常见的结构化数据包括关系型数据库中的表格数据、Excel电子表格中的数据等。
2. 半结构化数据:半结构化数据是介于结构化数据和非结构化数据之间的一种数据类型。
它具有一定的结构,但不符合传统的关系型数据库的模式。
常见的半结构化数据包括XML文件、JSON文件、HTML文件等。
3. 非结构化数据:非结构化数据是指没有固定格式和预定义模式的数据。
这种类型的数据通常以文本形式存在,没有明确的结构和关系。
常见的非结构化数据包括文档、电子邮件、图片、音频、视频等。
4. 时间序列数据:时间序列数据是按照时间顺序排列的数据,通常用于分析和预测趋势和模式。
常见的时间序列数据包括股票价格、气象数据、销售数据等。
5. 多媒体数据:多媒体数据是指包含图像、音频和视频等多种媒体元素的数据。
这种类型的数据通常具有较大的体积和复杂的结构。
常见的多媒体数据包括照片、音乐、电影等。
6. 元数据:元数据是描述数据的数据,用于解释和管理数据的含义和属性。
它包括数据的来源、格式、结构、关系等信息。
元数据在数据仓库中起着重要的作用,帮助用户理解和使用数据。
在构建数据仓库时,需要根据业务需求和数据特点选择合适的源数据类型。
不同的源数据类型需要采用不同的数据抽取、转换和加载(ETL)技术进行处理和整合。
同时,还需要考虑数据的质量、一致性和安全性等方面的问题,确保数据仓库的可靠性和有效性。
总结:数据仓库的源数据类型包括结构化数据、半结构化数据、非结构化数据、时间序列数据、多媒体数据和元数据。
根据业务需求和数据特点选择合适的源数据类型,并采用相应的ETL技术进行处理和整合。
ETL的经验总结
ETL的经验总结ETL的考虑做数据仓库系统,ETL是关键的⼀环。
说⼤了,ETL是数据整合解决⽅案,说⼩了,就是倒数据的⼯具。
回忆⼀下⼯作这么些年来,处理数据迁移、转换的⼯作倒还真的不少。
但是那些⼯作基本上是⼀次性⼯作或者很⼩数据量,使⽤access、DTS或是⾃⼰编个⼩程序搞定。
可是在数据仓库系统中,ETL上升到了⼀定的理论⾼度,和原来⼩打⼩闹的⼯具使⽤不同了。
究竟什么不同,从名字上就可以看到,⼈家已经将倒数据的过程分成3个步骤,E、T、L分别代表抽取、转换和装载。
其实ETL过程就是数据流动的过程,从不同的数据源流向不同的⽬标数据。
但在数据仓库中,ETL有⼏个特点,⼀是数据同步,它不是⼀次性倒完数据就拉到,它是经常性的活动,按照固定周期运⾏的,甚⾄现在还有⼈提出了实时ETL的概念。
⼆是数据量,⼀般都是巨⼤的,值得你将数据流动的过程拆分成E、T和L。
现在有很多成熟的⼯具提供ETL功能,例如datastage、powermart等,且不说他们的好坏。
从应⽤⾓度来说,ETL的过程其实不是⾮常复杂,这些⼯具给数据仓库⼯程带来和很⼤的便利性,特别是开发的便利和维护的便利。
但另⼀⽅⾯,开发⼈员容易迷失在这些⼯具中。
举个例⼦,VB是⼀种⾮常简单的语⾔并且也是⾮常易⽤的编程⼯具,上⼿特别快,但是真正VB的⾼⼿有多少?微软设计的产品通常有个原则是"将使⽤者当作傻⽠",在这个原则下,微软的东西确实⾮常好⽤,但是对于开发者,如果你⾃⼰也将⾃⼰当作傻⽠,那就真的傻了。
ETL⼯具也是⼀样,这些⼯具为我们提供图形化界⾯,让我们将主要的精⼒放在规则上,以期提⾼开发效率。
从使⽤效果来说,确实使⽤这些⼯具能够⾮常快速地构建⼀个job来处理某个数据,不过从整体来看,并不见得他的整体效率会⾼多少。
问题主要不是出在⼯具上,⽽是在设计、开发⼈员上。
他们迷失在⼯具中,没有去探求ETL的本质。
可以说这些⼯具应⽤了这么长时间,在这么多项⽬、环境中应⽤,它必然有它成功之处,它必定体现了ETL的本质。
数据仓库名词解释
数据仓库名词解释数据仓库是一个面向主题的、集成的、稳定的、直接面向最终用户的数据集合,用于支持企业决策制定、分析和决策支持系统。
数据仓库是一个独立的数据存储和管理系统,其目标是针对企业中各个部门的数据进行整合、清洗、加工和建模,从而提供一套一致、可信、易于访问和理解的数据,帮助用户进行数据分析和企业决策。
以下是一些与数据仓库相关的重要概念和名词的解释:1. 数据集成:将来自不同数据源的数据整合到数据仓库中,包括内部和外部数据源。
2. 数据清洗:数据清洗是指通过一系列的操作,消除数据中的错误、重复、缺失和不一致的部分,提高数据的质量。
3. 数据加工:对数据进行转换、聚合、计算和抽取,以满足用户的特定需求和分析目的。
4. 主题:数据仓库的主题是指根据企业的业务需求而组织起来的数据类别或领域,例如销售、人力资源、供应链等。
5. 元数据:元数据是描述数据的数据,包括数据的源头、结构、定义、关系等。
元数据对于数据仓库的管理和使用非常重要。
6. 维度:维度是数据仓库中描述主题的属性,如时间、地理位置、产品、客户等,用于分析和查询。
7. 度量:度量是数据仓库中可以计量和比较的数据,如销售额、利润、客户数量等。
8. 星型模式:星型模式是一种常见的数据仓库建模技术,其中一个中心表(事实表)围绕着多个维度表进行关联。
9. 粒度:粒度是指数据仓库中所记录的事实的详细程度,如日销售额、月销售额、年销售额等。
10. OLAP(联机分析处理):OLAP是一种针对多维数据进行快速查询和分析的技术,通过透视表、图表和报表等方式展现数据。
11. ETL(抽取、转换和加载):ETL是数据仓库中的核心过程,用于从源系统中抽取数据,通过转换和加工后加载到数据仓库中。
12. 决策支持系统:决策支持系统是通过利用数据仓库中的数据和分析工具,辅助管理层做出决策的信息系统。
数据仓库在企业中扮演着重要的角色,它能够提供一致、准确的数据,帮助企业决策者进行数据分析和制定决策。
物联网数据分析中的异构数据融合技术
物联网数据分析中的异构数据融合技术一、引言物联网数据分析是指将物联网设备产生的数据进行搜集、分析、挖掘等技术处理,以提供服务和决策支持的过程。
物联网数据来源众多,包括传统物理量(如温度、压力等)、光学量(如照度、颜色等)、声学量(如噪声、声音等)、运动量(如速度、位移等)等多种形式的数据。
因此,异构数据融合技术在物联网数据分析中扮演着重要的角色。
二、异构数据融合技术的定义及意义异构数据包括不同类型、不同源头的数据,如结构化数据、半结构化数据和非结构化数据等。
异构数据融合技术是指将这些不同类型、不同源头的数据集成到一个统一的框架下,以便实现数据分析和决策支持。
在物联网数据分析中,异构数据融合技术可以实现物联网设备产生的各种数据的统一管理和分析,从而提高数据的价值和使用效益。
三、异构数据融合技术的实现方式异构数据融合技术的实现方式主要包括以下几种:1. ETL技术ETL技术是一种数据抽取、转换和加工的技术,可以将不同类型、不同源头的数据抽取出来,进行转换和加工,最终形成一个数据仓库。
数据仓库中的数据是可以快速查询、分析和统计的。
ETL技术能够实现异构数据的融合,但是需要针对不同的数据源编写不同的程序和脚本,比较繁琐。
2. 元数据管理技术元数据是指描述数据的数据,是信息系统中的数据的重要组成部分。
元数据管理技术可以管理不同类型、不同源头的元数据,以实现异构数据的管理和融合。
具体地说,可以通过元数据管理技术将不同数据源的元数据抽象成一种通用格式,然后将这些通用格式整合在一起,实现异构数据的统一管理和融合。
3. 数据标准化技术数据标准化是指将不同数据源中的数据经过规范化处理,转化为一种统一的格式,以便于在数据分析中使用。
数据标准化技术可以将不同类型、不同来源的数据进行标准化处理,并将标准化后的数据整合在一个库中,方便管理和分析。
四、异构数据融合技术在物联网数据分析中的应用物联网数据分析需要对传感器产生的大量数据进行管理和分析,异构数据融合技术在这方面的应用非常广泛。
kettle原理
kettle原理Kettle原理。
Kettle是一种开源的ETL工具,ETL是Extract-Transform-Load的缩写,意为数据抽取、转换和加载。
Kettle主要用于数据仓库的建设和维护,它提供了强大的数据抽取、转换和加载功能,能够帮助用户快速、高效地实现数据的处理和分析。
Kettle原理是指Kettle工具实现数据处理的基本原理和机制,下面将详细介绍Kettle的原理。
首先,Kettle采用了元数据驱动的设计思想,即通过元数据描述数据处理的逻辑和流程。
元数据是描述数据的数据,它包括数据的结构、属性、关系、约束等信息。
在Kettle中,用户可以通过图形化界面设计数据处理的流程,包括数据抽取、转换和加载的步骤,每个步骤都可以通过元数据进行配置和定制。
这种设计思想使得Kettle具有很高的灵活性和可扩展性,用户可以根据实际需求定制和修改数据处理的流程,而不需要修改程序代码。
其次,Kettle采用了基于插件的架构,即Kettle的核心功能是由一系列插件组成的。
每个插件负责实现特定的功能,比如数据抽取、数据转换、数据加载等。
用户可以根据自己的需求选择和配置不同的插件,从而实现不同的数据处理功能。
这种架构使得Kettle具有很高的可扩展性和灵活性,用户可以根据实际需求定制和扩展Kettle的功能,而不需要修改程序代码。
另外,Kettle采用了基于元数据的数据处理引擎,即Kettle的数据处理是通过元数据驱动的。
在Kettle中,用户可以通过元数据描述数据处理的逻辑和流程,包括数据抽取、转换和加载的步骤,每个步骤都可以通过元数据进行配置和定制。
Kettle的数据处理引擎会根据元数据自动生成数据处理的代码,然后执行数据处理的流程。
这种设计思想使得Kettle具有很高的灵活性和可扩展性,用户可以根据实际需求定制和修改数据处理的流程,而不需要修改程序代码。
最后,Kettle采用了基于元数据的作业调度引擎,即Kettle的作业调度是通过元数据驱动的。
ETL工具介绍
ETL工具介绍1 ETL基本概念1.1 ETL的定义ETL分别是“Extract”、“ Transform” 、“Load”三个单词的首字母缩写也就是“抽取”、“转换”、“装载”,但我们日常往往简称其为数据抽取。
ETL是BI/DW(商务智能/数据仓库)的核心和灵魂,按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。
ETL包含了三方面,首先是“抽取”:将数据从各种原始的业务系统中读取出来,这是所有工作的前提。
其次“转换”:按照预先设计好的规则将抽取得数据进行转换,使本来异构的数据格式能统一起来。
最后“装载”:将转换完的数据按计划增量或全部导入到数据仓库中。
1.2 ETL的作用整个BI/DW系统由三大部分组成:数据集成、数据仓库和数据集市、多维数据分析。
通常,商务智能运作所依靠的信息系统是一个由传统系统、不兼容数据源、数据库与应用所共同构成的复杂数据集合,各个部分之间不能彼此交流。
从这个层面看:目前运行的应用系统是用户花费了很大精力和财力构建的、不可替代的系统,特别是系统的数据。
而新建的商务智能系统目的就是要通过数据分析来辅助用户决策,恰恰这些数据的来源、格式不一样,导致了系统实施、数据整合的难度。
此时,非常希望有一个全面的解决方案来解决用户的困境,解决数据一致性与集成化问题,使用户能够从已有传统环境与平台中采集数据,并利用一个单一解决方案对其进行高效的转换。
这个解决方案就是ETL。
ETL是BI/DW的核心和灵魂,按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。
如果说数据仓库的模型设计是一座大厦的设计蓝图,数据是砖瓦的话,那么ETL就是建设大厦的过程。
在整个项目中最难部分是用户需求分析和模型设计,而ETL规则设计和实施则是工作量最大的,其工作量要占整个项目的60%-80%,这是国内外专家从众多实践中得到的普遍共识。
基于元数据的ETL工具设计与实现
图 1 E L传 统 架 构 T
由于 E L在 数据仓 库 中 占行 重 要 的位 置 , T 包括 数据抽 取 、 转换 和 加 载 等 功 能 。数 据 抽 取 是 数据 仓 库 的入 口, 责从 各 个 、 务 系统 、 部 数据 接 口 、 负 I 外 脱 机存 储介 质等 采集 关 心 的数 据 , 就 是 将 数 据 源提 也 取 到数据缓 行 区 ; 据 转换 功 能 主要 是 包 括 对缓 存 数 的数据 的转 化 、 据 的重 新 格 式 化 和 计 算 、 键 数 关 数据 的重 新 构建 和 数据 总结 、 据 定 位 等 j数 据 数 ; 装 载功 能 主要 是 按 照 给 定 的数 据 模 型 将 转 换 后 的 数据 加载 到 目标 数据 库 或 数 据 仓 库 。换 言 之 , T EL 的作用 就是 在多 个 数据 源 中 的数 据 进 行 采 集 , 过 经 转换 , 到 面 向决 策支 持 的数据 。 得
E L过程 主要 工作 在 数 据 中心完 成 , 得 数据 中 心 T 使
开 销很大 , 为性 能 瓶 颈 。本 文 通 过 设 计 管理 元 数 成
2 0 7』 4 『收 剑 06 j 】 国家 r然 科 基 金 ( 0 7 02) 助 1 6 12 1 资
第 ・ 嚣简 介 : 茂 伟 , 18 一 ) 男 , i 究 , 究 方 向 : 作 心 ( 92 , 硕 研 研 信 息 管 理 , 据 仑 , 助 决 策技 术 : E i:sm @ 13 cm 数 辅 malgz w 6 .o
关键词
EL T
元数据
映射关 系
中图法 分类号
T 3 13 P9 . ;
文献标识码
A
大数据:元数据(Metadata)
⼤数据:元数据(Metadata)⼀、元数据概述1、元数据定义元数据:按传统的定义,元数据就是关于数据的数据;元数据的⽤途:打通源数据、数据仓库、数据应⽤,记录数据从产⽣到消亡的全过程;主要记录:数据仓库中模型的定义、各层级间的映射关系、监控数据仓库中的数据状态、监控 ETL 的任务的运⾏状态;在数据仓库系统中,元数据可以帮助数据仓库管理员和开发⼈员,⾮常⽅便的找到他们所关系的数据,⽤于指导其进⾏数据管理和开发,提供⼯作效率;将元数据按⽤途的不同分为两类:1. 技术元数据(Technical Metadata);2. 业务元数据(Business Metadata); 1/1)技术元数据作⽤ / ⽤途:存储关于数据仓库系统技术细节的数据,⽤于开发和管理数据仓库;例:阿⾥常见的技术元数据:1. 分布式计算系统的存储元数据如,MaxCompute 表、列、分区等:1. 记录了表的表名、分区信息、负责⼈信息、⽂件⼤⼩、表类型,⽣命周期;2. 列的字段名、字段类型、字段备注、是否是分区字段等;2. 分布式计算系统的运⾏元数据如,MaxCompute 上所有作业运⾏等信息;类似于 Hive 的 Job ⽇志,包括作业类型、实例名称、输⼊输出、SQL、运⾏参数、执⾏时间、最细粒度的 FuxiInstance(MaxCompute 中 MR执⾏的最⼩单元)执⾏信息等;3. 数据开发平台中,数据同步、计算任务、任务调度等信息数据同步信息:数据同步的输⼊输出表和字段、同步任务本⾝的节点信息;任务调度信息:任务的依赖类型、依赖关系等,以及不同类型调度任务的运⾏⽇志等;计算任务信息:输⼊输出、任务本⾝的节点信息;4. 与数据质量和运维相关的元数据如任务监控、运维报警、数据质量、故障等信息,包括任务监控运⾏⽇志、告警配置及运⾏⽇志、故障信息等; 1/2)业务元数据作业 / ⽤途:从业务⾓度描述了数据仓库中的数据,提供了介于使⽤者和实际系统之间的语义层,使得不懂计算机技术的业务⼈员也能够 “读懂” 数据仓库中的数据;阿⾥常见的业务元数据:1. OneData 元数据如,维度及属性、业务过程、指标等的规范化定义,⽤于更好的管理和使⽤数据;2. 数据应⽤元数据如,数据报表、数据产品等的配置和运⾏元数据;2、元数据的价值元数据最重要的应⽤价值,是数据管理、数据内容、数据应⽤的基础;1. 数据管理⽅⾯为集团数据提供在计算、存储、成本、质量、安全、模型等治理领域上的数据⽀持;如,在计算上可以利⽤元数据查找超长运⾏节点,对这些节点进⾏专项治理,保障基线产出时间;2. 数据内容⽅⾯为集团数据进⾏数据域、数据主题、业务属性等的提取和分析,提供数据材料;如,可以利⽤元数据构建知识图谱,给数据打标签,清楚的知道现在有哪些数据;3. 数据应⽤⽅⾯打通了产品及应⽤链路,保障产品数据准确、及时产出;如,打通 MaxCompute 和应⽤数据,明确数据资产等级,更有效的保障产品数据;3、统⼀元数据体系建设元数据建设的⽬标:打通数据接⼊到加⼯,再到数据消费的整个链路,规范元数据体系与模型,提供统⼀的元数据服务出⼝,保障元数据产出的稳定性和质量;元数据体系建设的思路:(以阿⾥元数据体系 OneMata 为例)1. ⾸先梳理清楚元数据底层数据1. 对元数据做分类,较少数据重复建设,保障数据的唯⼀性;分类:计算元数据、存储元数据、质量元数据、模型元数据、成本管理元数据等;2. 丰富表和字段使⽤说明,⽅便使⽤和理解;2. 根据元仓底层数据构建元仓中间层1. 依据 OneData 规范,建设元数据基础宽表,也就是元数据中间层,打通从数据产⽣到消费的整个链路,不断丰富中间层数据;如,MaxCompute 元数据、调度元数据、同步元数据、产品访问元数据、服务器元数据、应⽤注册元数据等;2. 基于元数据中间层,对外提供标准统⼀的元数据服务出⼝,保障元数据产出的质量;3. 应⽤1. 丰富的元数据中间层,能够为集团数据提供在计算、存储、成本、质量、安全、模型等治理领域上的数据⽀持,形成⼀套完整的ROI 数据体系;2. 丰富的元数据中间层,还能为为集团数据进⾏数据内容、数据域、数据主题、业务属性等的提取和分析提供了数据素材;⼆、元数据应⽤数据的真正价值在于,数据驱动决策,通过数据指导运营;数据化运营:通过数据驱动的⽅法,判断趋势,从⽽展开有效⾏动,帮助发现问题,推动创新或解决⽅案的产⽣;元数据应⽤⽰例:1. 对于数据使⽤者,可以通过元数据指导其快速找到所需要的数据;2. 对于 ETL ⼯程师,可以通过元数据指导其进⾏模型设计、任务优化、任务下线等各种⽇常 ETL ⼯作;3. 对于运维⼯程师,可以通过元数据指导其进⾏整个集群的存储、计算、系统优化等运维⼯作;1、Data Profile核⼼思路:为纷繁复杂的数据,建⽴⼀个脉络清晰的⾎缘图谱;主要功能:通过图计算、标签传播算法等技术,系统化、⾃动化的对计算与存储平台上的数据,进⾏打标、整理、归档;形象的说,Data Profile 实际承担的是为元数据 “画像” 的任务;Data Profile 共有四类标签:思路:数据之间的个性化,除了应⽤场景的不同之外,实际上在数据研发流程、保障登记、数据质量要求、安全等级、运维策略、警告设置上都会有差异;作⽤:节约研发⼈员的时间成本,同时对阿⾥内部的⾮研发⼈员来说,也可以更直观的理解数据、利⽤数据,从⽽提升数据的研发效率;根据这种差异化,Data Profile 开发了四类标签:1. 基础标签:针对数据的存储情况、访问情况、安全等级等进⾏打标;2. 数仓标签:针对数据是增量还是全量、是否可再⽣、数据的⽣命周期来进⾏标签化处理;3. 业务标签:根据数据归属的主题域、产品线、业务类型,为数据打上不同的标签;4. 潜在标签:主要为了说明数据潜在的应⽤场景,如,社交、媒体、⼴告、电商、⾦融等;2、元数据门户主要功能:数据搜索和数据管理;功能模块:“前台”、“后台”;1. “前台” 产品数据地图功能:定位消费市场,实现检索数据、理解数据等 “找数据” 的需求;数据地图:服务对象:围绕数据搜索,服务于数据分析、数据开发、数据挖掘、算法⼯程师、数据运营等,数据表的使⽤者和拥有者;服务内容:提供⽅便快捷的数据搜索服务,拥有功能强⼤的⾎缘信息及影响分析,利⽤表使⽤说明、评价反馈、表收藏级精品表机制,为⽤户浮现⾼质量、⾼保障的⽬标数据;1. 如,在数据分析前,使⽤数据地图进⾏关键词搜索,帮助快速缩⼩范围,找到对应的数据;2. 如,使⽤数据地图根据表名直接查看表详情,快速查阅明细信息,掌握使⽤规则;3. 如,通过数据地图的⾎缘分析,可以查看每个数据表的来源、去向,并查看每个表及字段的加⼯逻辑;2. “后台” 产品数据管理功能:定位于⼀站式数据管理,实现成本管理、安全管理、质量管理等;数据管理平台:服务对象及内容:个⼈开发者、BU 管理者、系统管理员等⽤户,提供个⼈和 BU 全局资产管理、成本管理、质量管理等;1. 针对个⼈开发者,主要包括计算费⽤和健康分管理、存储费⽤和健康分管理,并提供优化建议和优化接⼝;2. 针对 BU 管理者和管理员,主要提供 BU、应⽤、集群等全局资产消耗概览、分析和预测;3、应⽤链路分析思路 / 功能:配置数据间的 “⾎缘关系”,⽤户可以通过元数据⾎缘,分析产品及应⽤的链路;通过⾎缘链路可以清楚的统计到某个产品所⽤到的数据在计算、存储、质量上存在哪些问题;通过治理优化保障产品数据的稳定性;实例:业务需求对于某个数据计算任务或表,其重要程度如何?是否还有下游在使⽤?是否可以下线?阿⾥的很多数据产品,都依赖哪些 MaxCompute 表?对这些 MaxCompute 表是否需要根据应⽤的重要程度进⾏资源、运维保障?解决思路:通过元数据⾎缘来分析产品及应⽤的链路,通过⾎缘链路可以清楚的统计到某个产品所⽤到的数据在计算、存储、质量上存在哪些问题,通过治理优化保障产品数据的稳定性;通过应⽤链路分析,产出 3 中⾎缘类型:表级⾎缘、字段⾎缘、表的应⽤⾎缘;表级⾎缘主要有 2 中计算⽅式:1. 通过 MaxCompute 任务⽇志进⾏解析;2. 根据任务依赖进⾏解析;表的应⽤⾎缘解析:难点最⼤;按照应⽤和物理表的配置关系,可以分为配置型和⽆配置型:1. 配置型:如,对于数据报表、集市等应⽤,其数据源直接或间接使⽤ MaxCompute 数据,且有元数据配置依赖关系,通过配置元数据,可以获取 MaxCompute 物理表、具体的报表、集市等应⽤的⾎缘关系;问题案例:对于⽣意参谋等数据产品,其数据源通过数据同步⽅式同步到 MySQL、HBase 等数据库,间接使⽤MaxCompute 数据,且⽆配置产品和 MySQL、HBase 等物流数据源的依赖关系,导致⽆法通过配置源数据解析MaxCompute 数据和数据产品的关系;解决⽅案:主要通过统⼀的应⽤⽇志打点 SDK 来解决此类问题,可以做到配置化、应⽤⽆痕化;2. ⽆配置型:常见的应⽤链路分析应⽤:主要有影响分析、重要性分析、下线分析、链路分析、寻根溯源、故障排查等;4、数据建模思路 / 业务场景:基于现有底层数据已经有下游使⽤的情况,可以通过下游使⽤的元数据指导数据参考模型;通过元数据驱动的数据仓库模型建设,提⾼了数据仓库建模的数据化指导,提升建模效率;下游使⽤情况:指查询、关联、聚合、过滤等操作;记录下游使⽤情况的数据,就是辅助建设模型的元数据;操作:设置阈值,记录下游对数据的使⽤情况,使⽤次数超过阈值的情况,将被⽤来参考建模;数据仓库建模所使⽤的元数据:其中,查询值 SQL 的 SELECT,关联指 SQL 的 JOIN,聚合指 SQL 的 GROUP BY,过滤指 SQL 的 WHERE;1. 表的基础元数据包括下游情况、查询次数、关联次数、聚合次数、产出时间等;2. 表的关联关系元数据包括关联表、关联类型、关联字段、关联次数等;3. 表的字段的基础元数据包括字段名称、字段注释、查询次数、关联次数、聚合次数、过滤次数等;在星形模型设计过程中,可能类似于如下使⽤元数据:1. 基于下游使⽤中关联次数⼤于某个阈值的表,或查询次数⼤于某个阈值的表等元数据信息,筛选⽤于数据模型建设的表;2. 基于表的字段元数据,如,字段中的时间字段、字段在下游使⽤中的过滤次数等,选择业务过程标识字段;3. 基于主从表的关联关系、关联次数,确定和主表关联的从表;4. 基于主从表的字段使⽤情况,如,字段的查询次数、过滤次数、关联次数、聚合次数等,确定哪些字段进⼊⽬标模型;5、驱动 ETL 开发思路:通过元数据,指导 ETL ⼯作,提⾼ ETL 的效率;实例场景:1. 通过 Data Profile 得到数据的下游任务依赖情况、最近被读写次数、数据是否可再⽣、每天消耗的存储计算等,通过这些信息判断数据是否可以下线;2. 如果根据⼀些规则判断数据可以下线,则会通过 OneClick 触发⼀个数据下线的⼯作任务流,数据 Owner 可能只需要点击提交按钮,删除数据、删除元数据、下线调度任务、下线 DQC 监控等⼀些列的操作就会⾃动在后台执⾏完成;。
基于元数据的数据仓库ETL系统设计与研究
结合方式来构建 E L系统 . l 阐述 了 E L系统的设计思路 , T 元数据管理设计和 E L流程控制设计 . T
关键 词 : 数据库仓库 ;T ; EL元数据 ; 流程控制; 设计
中图分类 号 :P9 . T31
文献标 识码 : 文章编 号 : 7-83( 1)2 03 3 A 1 4 7一 000. 4— 6 3 2 0 0
・
43 ・
并按照 规范完 成 数据 的转换 工作 , 同时 根 据 数据 接 库 医疗 信息 分析 系 统 为例 , 构 建 基 于数 据仓 库 医 在 收方提 供 的报 告文 件 , 时处理 异 常情况 . 及 而数 据 的 疗信息 分 析 系 统 时 , 量 医 疗 信 息 来 源 于 医 院 的 大 接收方 则 负 责对 源数 据 提供 方 提 供 的 接 口数 据 文 HS I数据 库 中 包 含 有 门诊 管 理 、 诊 管 理 、 院 管 急 住 件 、 口校验 文件 、 接 报告文 件及 时 的读取 、 接收 、 核对 理 、 品 管理 、 案 管理 、 务 管理 、 备 管理 、 济 药 病 财 设 经
1 1 元数 据 .
2 l E数据 . 数 据 是描 述 数 据 2 1 E L系统 的结构 设计 元 . T 仓库 内数据 的结 构 和 建 立 方法 的数 据 , 其 用 途 可 按
在数据库仓库的数据抽取转换加载过程中, 首
分为两类 : 技术元数据和业务元数据 . 技术元数据是 先要 确定 数据 源 和 目标 数据 源 , 以及 数据 源 的特性 , 用 于开发 、 管理 和维 护数 据仓库 使用 的数 据 , 包括 制定 数 据抽取 、 它 转换 和加 载策 略 . 由源数 据提供 方在
ETL解决方案资料
ETL解决方案资料ETL(Extract-Transform-Load)是一种数据仓库技术,用于将数据从源系统中抽取出来,通过各种转换和清洗操作,最终加载到目标系统中。
ETL解决方案的目标是实现高效、可靠和可扩展的数据集成。
本文将介绍ETL解决方案的基本原理、主要组成部分和常见工具的使用。
一、ETL解决方案的基本原理1. 数据抽取(Extract):数据抽取是将数据从源系统中提取出来的过程。
这个过程可以基于多种方式实现,如读取数据库表、读取文件、访问API接口等。
抽取的数据可以是全量数据,也可以是增量数据。
2. 数据转换(Transform):数据转换是将抽取得到的数据进行各种转换和清洗操作的过程。
这个过程可以包括数据格式转换、数据合并、数据过滤、数据清洗、数据计算等。
数据转换的目的是使得数据能够符合目标系统的数据模型和要求。
3. 数据加载(Load):数据加载是将经过转换的数据加载到目标系统中的过程。
目标系统可以是数据仓库、数据湖、OLAP数据库等。
加载的方式可以是全量加载,也可以是增量加载。
加载的数据可以是维度数据和事实数据。
二、ETL解决方案的主要组成部分1.抽取引擎:抽取引擎负责从源系统中提取数据。
抽取引擎可以是基于SQL的查询引擎,也可以是基于API接口的数据提供者。
抽取引擎的选择取决于源系统的类型和数据提取的需求。
2.转换引擎:转换引擎负责将提取得到的数据进行各种转换和清洗操作。
转换引擎可以是基于规则的转换引擎,也可以是编程语言或脚本语言。
转换引擎的选择取决于转换操作的复杂性和灵活性的需求。
3.加载引擎:加载引擎负责将经过转换的数据加载到目标系统中。
加载引擎可以是基于SQL的数据加载引擎,也可以是专门的ETL工具。
加载引擎的选择取决于目标系统的类型和加载操作的需求。
4.元数据管理:元数据管理负责管理ETL流程的元数据,包括数据源的结构信息、转换规则的定义信息、目标系统的结构信息等。
元数据管理可以基于数据库实现,也可以是基于元数据管理工具。
数据仓库的源数据类型
数据仓库的源数据类型概述:数据仓库是一个用于集成、存储和管理企业中各种来源的数据的系统。
在数据仓库中,源数据类型是指输入到数据仓库中的数据的不同类别和格式。
不同的源数据类型需要采用不同的处理方式和技术来进行数据抽取、转换和加载(ETL)操作。
本文将详细介绍常见的数据仓库源数据类型及其特点。
1. 结构化数据:结构化数据是指具有明确定义的数据模型、格式和关系的数据。
它通常以表格形式存在,可以使用SQL等查询语言进行访问和操作。
常见的结构化数据源包括关系型数据库、电子表格和CSV文件等。
结构化数据具有清晰的数据模式和关系,适合进行复杂的分析和查询操作。
2. 半结构化数据:半结构化数据是指具有部分结构化的数据,但不符合传统关系型数据库的严格模式。
它通常以XML、JSON或HTML等格式存储,包含标签、属性和值等元素。
半结构化数据的特点是灵活性和可扩展性,适合存储和处理不同结构和格式的数据。
3. 非结构化数据:非结构化数据是指没有明确结构和模式的数据,通常以文本、图像、音频和视频等形式存在。
非结构化数据的特点是数据量大、格式多样且难以处理。
常见的非结构化数据源包括电子邮件、社交媒体内容、日志文件和多媒体文件等。
处理非结构化数据需要使用自然语言处理、图像识别和音频处理等技术。
4. 实时数据:实时数据是指在数据产生的同时进行处理和分析的数据。
它通常以流的形式连续产生,要求实时性和低延迟。
常见的实时数据源包括传感器数据、交易数据和网络日志等。
处理实时数据需要使用流处理技术和复杂事件处理(CEP)引擎。
5. 外部数据:外部数据是指从数据仓库外部获取的数据,可以是来自第三方数据提供商、开放数据源或云服务等。
外部数据可以丰富数据仓库的内容和广度,提供更全面的分析视角。
常见的外部数据源包括市场数据、社交媒体数据和天气数据等。
6. 元数据:元数据是描述数据的数据,用于管理和解释数据的含义和结构。
元数据可以包括数据字典、数据模型、数据血统和数据质量指标等信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.2.2 元数据 一、什么是元数据
2、元数据的分类 按照用途对元数据进行分类是最常见的分类 方法,可将其分为两类: (1)管理元数据
(2)用户元数据
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.2 元数据 一、什么是元数据 2、元数据的分类(续) 管理元数据是存储关于数据仓库系统技术细 节的数据,是用于开发和管理数据仓库使用的数 据,它主要包括以下信息: 1)数据仓库结构的描述,包括仓库模式、视 图、维、层次结构和导出数据的定义,以及数据 集市的位置和内容。 2)业务系统、数据仓库和数据集市的体系结 构和模式。
5)集成和开放性;6)对元数据的管理。
在工具的选择时,用户重点考虑这些可能影
响ETL工具的要素。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.1 ETL 三、ETL工具 3、ETL工具选择(续)
性能
灵活性 难易程度 管理和维护 性能和效率 开发周期 工作量
ETL工具
比较灵活 相对容易 容易 较高 较短 中等
第一章 数据仓库原理 1.2 数据仓库中的ETL和元数据
1.2.1 ETL 1.2.2 元数据 1.2.3 外部数据
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.1 ETL
一、ETL的概念 数据仓库的ETL系统是数据仓库中数据整理阶 段的一个主要工具,它与元数据管理相结合,提供 对不同数据源的数据进行抽取、转换、清洗、装载 的功能。 通常而言,开发一个数据仓库项目包括了3个 主要步骤:需求/建模,ETL开发,最后的前端开 发。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据 1.2.1 ETL 一、ETL的概念 3、数据装载(续) 数据的追加策略根据数据的抽取策略以及业 务规则确定,一般有3种类型: 1)直接追加; 2)全部覆盖; 3)更新追加。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据 1.2.1 ETL 二、ETL的作用 1、解决数据分散问题
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.2 元数据 一、什么是元数据
1、元数据的概念(续) 元数据是描述数据仓库内数据的结构和建立 方法的数据,对这些信息妥善保存,并很好地管理 将为数据仓库的发展和使用提供方便,使得最终用
户和DSS分析员能够探索各种可能性。
第一章 数据仓库原理
出所需的数据,经过数据清洗,最终按照预先定义
好的数据仓库模型,将数据装载到数据仓库中去。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.1 ETL 一、ETL的概念 1、数据抽取
数据抽取是数据源接口,从业务系统中抽取数 据,为数据仓库输入数据。 典型的数据抽取接口包括数据库接口和文件 接口,对于不同的数据平台、不同源数据形式、不 同性能要求和业务量的业务系统以及不同数据量的 源数据,采取不同的数据抽取接口。
Ardent DateStage
提供工作流的方式,可以实现内部编 数据抽取功能的处理方 程 式过于简单,程序的高 效性和准确性方面的保 证措施太少
抽取速度比较快 采用非工作流的工作方 式,用户面临过大的工 作量,程序的高效性和 准确性方面的保证措施 太少
CA
Inforbump
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据 1.2.1 ETL 三、ETL工具 3、ETL工具选择 ETL工具的功能可以概括为: 1)对平台的支持;2)对数据源的支持; 3)数据转换功能;4)管理和调度功能;
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据 1.2.1 ETL 一、ETL的概念 3、数据装载 数据装载就是将从数据源系统中抽取、转换、 清洗后的数据装载到数据仓库系统中。 主要的数据装载技术有两种: 1)使用数据仓库引擎厂商提供的数据装载工 具进行数据装载。 2)通过数据仓库引擎厂商提供的API编程进 行数据装载。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.2 元数据
在需求不确定情况下,在瞬间万变的商业环境 下,元数据可以更好的支持需求变化,降低项目风 险。事实上,元数据贯穿于建立数据仓库的整个过 程之中,是数据仓库构建过程中的一个重要部分, 起着至关重要的作用。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.1 ETL 一、ETL的概念 2、数据转换和数据清洗
数据转换、清洗工作一般会有以下几种实现方法:
1)在数据抽取过程中进行数据处理。
2)使用异步数据装载,以文件的方式处理。
3)在数据装载过程中进行数据处理。
4)进入数据仓库以后再进行数据处理。
色。也正因为有了元数据,用户才可以最有效地
利用数据仓库。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.2 元数据
元数据使得用户可以掌握数据历史,如: 1)数据从哪里来? 2)流通时间有多长? 3)更新频率是多大? 3)数据元素的含义是什么? 5)对数据已经进行了哪些计算、转换和筛选 等。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.1 ETL 一、ETL的概念 2、数据转换和数据清洗(续) 数据转换和数据清洗主要完成如下数据不一致:
1)源数据库系统同数据仓库系统在模型上的差异。 2)源数据库系统不一致。 3)源数据结构不一致。 4)源数据定义不规范导致错误数据。 5)对数据的约束不严格,导致无意义数据。 6)存在重复数据。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.1 ETL 一、ETL的概念 2、数据转换和数据清洗 数据转换和数据清洗是指对从业务系统中抽
取的数据根据数据仓库系统模型的要求,进行数 据的转换、清洗、拆分、汇总等处理,保证来自 不同系统、不同格式的数据具有一致性和完整性, 并按要求装入数据仓库。
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据 1.2.2 元数据 一、什么是元数据 2、元数据的分类 按照数据仓库功能区域的划分,对元数据可
以分为:
1)数据获取元数据
2)数据存储元数据
3)信息传递元数据
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.2 元数据 一、什么是元数据 2、元数据的分类 按照元数据在数据仓库中所承担的任务,可
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据 1.2.1 ETL 一、ETL的概念(续)
ETL
数 据 源
数 据 抽 取
数 据 转 换
数 据 装 载
数据仓库
OLAP 数据挖掘
客户端
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.1 ETL 一、ETL的概念(续)
可以看出ETL是构建数据仓库的重要一环,同 时也是构建数据仓库的基础与前提,是数据仓库从 业务系统获得数据的必经之路。用户从数据源抽取
以元数据分为: 1)静态元数据
2)动态元数据
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据
1.2.2 元数据
一、什么是元数据 3、元数据的作用
用户元数据
即席查询
OLAP分析
数据挖掘
业 务 层 数 据 仓 库 层 操 作 环 境 层
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据 1.2.1 ETL 三、ETL工具 2、ETL工具比较
数据库厂商 IBM
ETL工具 Warehouse Manager
优点 缺点 数据源广泛,在大数据量的抽取中具 界面不太友好,在处理 有速度优势,提供编程接口和调用外 复杂的数据源时面临较 部程序的功能;提供 agent 把数据抽 多的工作量 取分布到工作站、小型机、大型机等 各种平台 提供的躬耕包括:模型构造和设计; 数据提取、移动和元数据管理;分析 工具整合;数据仓库管理;具有开放 可延伸的框架 不能把数据抽取扩充到 Unix工作站、小型机、 大型机,流程繁琐,不 易使用
手工编码
最灵活 要求一定的技术水平 较难 取决于编写者水平 较长 较重
原理
1.2 数据仓库中的ETL和元数据 1.2.2 元数据
数据仓库环境中一个重要方面是元数据。简
单地说,元数据就是“关于数据的数据”。只要
有程序和数据,元数据就是信息处理环境的一部
分。在数据仓库中,元数据扮演一个新的重要角
ORACLE
Oracle Warehouse Builder DTS
MICROSOFT
从广泛的数据源抽取数据,提供市场 就数据仓库环境而言, 上最有效的编程方式,以及工作流的 处理数据的量是有限的 任务处理方式;提供调用外部吧程序 的功能和强大、丰富的外部程序调用 的对象库;按计划自动执行数据抽取
INFORMIX
1.2.2 元数据 一、什么是元数据
1、元数据的概念 在数据仓库系统中,元数据是关于数据仓库 的数据,指在数据仓库建设过程中所产生的有关 数据源定义、目标定义,转换规则等相关的关键 数据,同时元数据还包含关于数据含义的商业信 息。 元数据可以帮助数据仓库管理员和数据仓库 的开发人员非常方便地找到他们所关心的数据。
2、解决数据不清洁问题 3、方便企业各部门构筑数据集市
第一章 数据仓库原理
1.2 数据仓库中的ETL和元数据 1.2.1 ETL 三、ETL工具 1、ETL工具分类 (1)专业ETL厂商和产品 这类产品一般都有较完善的体系结构,并且久 经市场考验,产品功能的复杂和详尽程度往往能 令初次接触的人瞪目,但其高昂的价格也会使一
第一章 数据仓库原理