本文转载自:http://www.cnblogs.com/evencao/archive/2013/06/14/3135529.html

ETL在数据仓库中具有以下的几个特点:

数据流动具有周期性:

因为数据仓库中的数据量巨大,一般采用成熟的ETL工具去完成抽取、转换、加载,以降低设计开发的和维护的复杂度,使设计开发人员有更多的时间去专注于业务转化规则。

ETL是数据抽取、转换、加载的简写。它的一般过程是将数据源抽取出来,中间经过数据的清洗、转换,最后加载到目标表中。ETL的过程一般是批量的。

ETL的本质

1.用户应该理解ETL本质上就是数据从源到目标的过程。

2.大多数的ETL工具价格昂贵,宏观上一般都适合处理海量的数据,但是在微观上需要考虑ETL处理的不同情况。

3.元数据时ETL过程的重要体现,藐视了数据源的属性、数据源到目标库的转换规则,数据抽取历史记录等。

4.构建一个商业智能系统,设计开发人员更多的人喜欢在ETL开始之前先将所有的业务规则弄清楚。

影响ETL数据质量的关键因素:

  • 可能会有一部风数据因为客观或者人为的原因到时数据格式混乱。
  • 源系统设计存在不合理性
  • 在开发过程中,因为开发人员的错误或者设计人员对业务规则描述的问题,同样会导致数据质量出现问题。

保证数据质量的方法:

  首先用户必须遵守数据仓库项目中的数据源的质量要求,对业务源数据进行仔细分析,以便对数据源的任何错误或不规范的地方有相应的处理方法,如对错误进行修改或者舍弃

  其次,在保证数据源的质量之后,在设计ETl过程中,对每一个步骤应该有一个衡量数据质量的方法,需要重视ETL的每一个过程。

  最后,就是规范业务流程,保证ETL正确性,避免误删或者重复加载数据。

其中对质量的衡量有几种方式:

  • 1.定义的数据是否和实际值相同。
  • 2.指标数据是否符合业务规则。
  • 3.数据是否和业务源系统中的信息保持一致。
  • 4.数据时违背自然规律或者不符合常理。

主流的ETL工具有 Informatica PowerCenterDatastage。ETL 是商业智能的核心和灵魂。

详解ETL过程:

1.数据抽取

数据抽取就是从源系统中获取业务数据的过程。数据抽取时需要考虑很多的因素,(抽取时间,收取方式,抽取周期等)数据抽取有以下几种情况:

(1)如果业务操作系统数据库和数据仓库质检的数据库管理系统完全相同,只需要建立相应的连接关系就可以使用ETL工具直接访问,或者调用相应的SQL语句或者存储过程。

(2)若数据仓库系统和业务操作型数据库的数据管理器不相同,比较简单的方式是使用ETL工具导出成文本文件或者Execl文件,然后再进行统一的数据抽取。

(3)如果需要抽取的数据量非常的庞大,此时必须考虑增量抽取。

2.数据清洗

  数据清洗就是选择出有缺陷的数据,然后再将他们正确话和规范化,从而达到用户要求的数据质量标准。

3.数据转换

数据转换就是指从业务系统中抽取的源数据,然后再根据数据仓库模型的需求,进行一系列数据转换的过程。

数据转换是ETL过程中复杂度最高的过程,包括对数据不一致性的转换,业务指标的计算和某些数据的汇总,为决策系统提供数据支持。

ETL转换过程中可能包含几个方面:

  • 对空值进行处理:在进行加载是需要将空值替换成某一数据或者直接进行加载。
  • 对数据格式规范化:例如:统一将数值型转化为字符型
  • 根据业务需求进行字段的拆分和合并
  • 对缺失数据的替换:
  • 根据业务规则对数据进行过滤
  • 根据编码表进行数据唯一性的转换:

4.数据加载:

这是ETL的最后一笔,需要保证加载工具必须有高效的性能去完成数据加载,同时还需要考虑加载的时周期和数据加载的策略。

数据加载包括:

时间戳的加载方式,是比较常见的一种加载方式。

全表对比的加载方式、通过读取日志进行加载的方式、全表删除后再进行加载的方式。

5.ETL日志

ETL日志非常重要,它记录了ETL执行过程中的每一步信息。帮助系统维护人员进行监控,当然ETL日志也可以未做数据加载的一个策略。

ETL设计的规范要点:

1.在ETL设计之前,需要根据业务的需求确定所要分析的主题和数据结构。根据数据仓库的模型,考虑在ETL设计中是否增加预留字段和属性。

2.确定数据的粒度

3.ETL抽取周期的确定。

4.以增量抽取的方式作为ETL设计的重点,减少数据抽取的压力和抽取时间。

5.通常抽取盒清洗可以分成很多步骤

6.对异常情况进行处理。包括网络中断等情况进行处理,保证数据的正确性。

7.对ETL的运行管理和监控措施。

ETL的框架结构:

主要包括:ETL调度、抽取策略、转换策略、加载策略

统一调度室ETL中较为重要的功能。

1.自动调度方式

2.手动调度方式

转载于:https://www.cnblogs.com/shujuxiong/p/9105751.html

数据仓库基础(二)ETL相关推荐

  1. 探求数据仓库关键环节ETL的本质

    做数据仓库系统,ETL是关键的一环.说大了,ETL是数据整合解决方案,说小了,就是倒数据的工具.回忆一下工作这么些年来,处理数据迁移.转换的工作倒还真的不少.但是那些工作基本上是一次性工作或者很小数据 ...

  2. 数据仓库——数据仓库基础

    数据仓库基础 1. *数仓中是如何划分主题的? 主题(Subject)是在较高层次上将企业信息系统中的数据进行综合,归类和分析利用的一个抽象概念,每一个主题基本对应一个宏观的分析领域.在逻辑意义上,它 ...

  3. ETL学习心得:探求数据仓库关键环节ETL的本质【转】

    ETL学习心得:探求数据仓库关键环节ETL的本质 做数据仓库系统,ETL是关键的一环.说大了,ETL是数据整合解决方案,说小了,就是倒数据的工具.回忆 一下工作这么些年来,处理数据迁移.转换的工作倒还 ...

  4. 数据仓库建模与ETL实践技巧

    数据仓库建模与ETL实践技巧 北京迈思奇科技有限公司 戴子良 专家简历 戴子良,北京迈思奇科技有限公司(www.minesage.com)咨询顾问,微软MCP,ETL专家,在数据仓库,数据清洗,数据整 ...

  5. 4.1 数据仓库基础与Apache Hive入门

    数据仓库基础与Apache Hive入门 一.数据仓库基本概念 1.数据仓库概念 2. 案例:数据仓库为何而来 (1)业务数据的存储问题 (2)分析型决策的制定 3.数据仓库主要特征 面向主题性(Su ...

  6. 数据仓库(基础篇)——基于维度建模思想

      大家好,我是不温卜火,是一名计算机学院大数据专业大三的学生,昵称来源于成语-不温不火,本意是希望自己性情温和.作为一名互联网行业的小白,博主写博客一方面是为了记录自己的学习过程,另一方面是总结自己 ...

  7. 蓝鸥Unity开发基础二——课时20 接口

    蓝鸥Unity开发基础二--课时20 接口 一.接口 使用interface关键字定义接口 接口定义一组成员单不直接实现它们 二.实现接口 实现接口的任何类都必须实现其所有的成员方法 接口不能直接实例 ...

  8. shell基础二十篇 一些笔记

    shell基础二十篇 转自 http://bbs.chinaunix.net/thread-452942-1-1.html 研讨:Bash 内建命令 read (read命令更具体的说明见博客收藏的一 ...

  9. Bootstrap基础二十七 多媒体对象(Media Object)

    Bootstrap<基础二十七> 多媒体对象(Media Object) 原文:Bootstrap<基础二十七> 多媒体对象(Media Object) Bootstrap 中 ...

  10. Web开发(一)·期末不挂之第三章·HTML基础二(html实现表格和表单)

    HTML基础二 一. 表格✪✪✪ 二.表单 插入表单 输入标签✪✪ 多行文本域 下拉菜单 三.其他 label标签 内联框架 一. 表格✪✪✪ 插入表格: < table>< /ta ...

最新文章

  1. 图论 ---- CF700 C. Break Up(Tarjan找桥+枚举+思维)
  2. oc 查看属性默认关键词
  3. 英伟达RTX 30系列卖得太好,财报业绩创新高,老黄:Arm收购完成时间已确定
  4. Oracle里PO自动售货如何做,Oracle R12采办接收流程(PR-PO-RCV-AP-Payment)
  5. 数据库MySQL/mariadb知识点——触发器
  6. 《底层逻辑》--思维导图
  7. 作者:邹本友,男,中国人民大学信息学院博士生, CCF学生会员。
  8. (MYSQL) Unknown table 'a' in MULTI DELETE的解决办法
  9. 智能优化算法:纵横交叉算法-附代码
  10. qt unicode转gbk_Qt中文编码和QString类Unicode编码转换
  11. PLC编程之ST语言
  12. 2018-11-3-如何使用-Telegram
  13. 宋宝华:论一切都是文件之匿名inode
  14. 常用的数据库统计SQL语句
  15. 为什么现在的游戏越来越不好玩了?
  16. oracle定时任务实例
  17. 与其苟延残喘,不如纵情燃烧
  18. 基于中文维基百科的词向量构建及可视化
  19. 报道|香港科大商学院【在商言商·思享会】(第一场)“企业如何抓住新一代科技红利”...
  20. 软电话测试工具:SIPP

热门文章

  1. 全局变量和局部变量命名规则_变量范围和LEGB规则
  2. 代码覆盖率测试工具:gcov和lcov的使用
  3. linux应用开发:用户空间如何通过sysfs控制GPIO
  4. 信用卡套现只要正常还款,银行是不是睁只眼闭只眼?
  5. 《心欢喜,灵快乐》出版
  6. 发球机器轰灭了中国姑娘的奇迹
  7. 单片机小白学步系列(十五) 单片机程序下载失败总结
  8. 单片机小白学步系列(十二) Proteus仿真软件简介
  9. 操作系统锁的实现方法有哪几种_「从入门到放弃-Java」并发编程-锁-synchronized...
  10. python自动发邮件运行正常就是收不到邮件是为什么_python stmp module 163邮箱发送邮件不成功...