数据仓库基础(六)数据的ETL

本文转载自:http://www.cnblogs.com/evencao/p/3140487.htmlhtml

 

ETL是数据抽取(Extract)转换(Transform)加载(Load)的简写,是构建数据仓库最重要的一步。算法

1.抽取安全

抽取时元数据进入到数据仓库的第一步。由于每一个业务系统数据的质量不相同,因此须要对每一个数据源创建不一样的抽取程序。服务器

抽取的主要功能:数据结构

提供数据匹配器的功能:这样使得程序能够与多种业务数据源相链接。spa

提供标准化的功能:抽取最重要的一个功能就是对数据类型的标准化,将业务数据和数据仓库中的数据类型统一。设计

提供批处理的服务:日志

提供过滤的功能:orm

 

2.清洗htm

清洗是源数据进入到数据仓库的第二步。目的是保证源数据的数据质量符合数据仓库的要求,同时保证数据的一致性。

清洗的主要功能:

数据修正:使用固定算法或者相应的数据源检查程序区验证信息是否准确。

数据标准化功能:将业务数据源的数据标准化,以知足数据仓库中的数据一致的要求。

匹配和合并功能:对抽取出来的数据进行重复验证,而后对重复数据进行单独合并。

 

3.转换

转换的功能:

对数据进行计算:根据业务需求的特色对业务源数据进行相关的计算,以知足数据仓库的要求。

对数据进行放大:根据实际的业务需求,为数据调价额外的信息,从而保证数据仓库的一致性和正确性。

 

4.加载:这是ETL的最后一步。主要负责将数据加载到目标表中,这些目标表多是事实表,也多是维度表。

 

定义ETL的流程

1.从源数据抽取到ODS数据缓冲区

   ODS数据缓冲区是指数据临时存储区域,它基本上与源系统的数据结构保持一致。

2.从ODS数据缓冲区ODS统一信息视图区:通常来讲是定时抽取的,除了第一次作全量抽取外,其他时间都是作增量抽取,能够按照某种更新策略进行抽取。

3.从ODS统一信息视图区抽取到数据仓库:数据仓库是根据业务需求,对企业受进行整合,同时又是存储历史数据的地方

4.从数据仓库抽取到数据集市:数据集市是针对某个主题域、部门或者是特定用户的数据集合。

 

ETL的加载方法

1.以时间戳做为加载条件:

 利用时间戳的方式对目标表进行数据加载是相对简单的一种方法。这种时间戳做为数据加载条件的

优势是使ETL设计简单清晰,抽取的效率相对较高,而且能够实现ETL数据加载的需求

 缺点是须要对业务数据源的时间戳进行维护。

2利用源表的日志信息对目标表进行加载:在业务系统中为源表中的数据增长、删除、修改时,及时更新该源表的日志表。

  优势是:不须要更改数据源表结构和数据,下降了数据加载的风险。

  缺点是须要维护日志表数据,增长了系统的开销。

3.进行全表对比的方式进行数据的加载

  是对目标表的每一条数据进行比较,当目标表不存在该主键时,进行插入操做,若是该主键值已经存在,则须要对其他字段进行比较,若是有不相同的数值,则须要进行更新操做。

  优势:安全性高

  缺点:流程较为复杂,通常抽取的效率较低。

4.全表删除后再进行数据加载的方式`

 

利用ETL构建企业级数据仓库

1.在构建数据仓库的时候,一般的作法是将业务系统部署在一台服务器,而数据仓库部署在另外一台服务器中

2.构建企业级数据仓库须要充分发挥时间戳的做用

3.在构建企业数据仓库时,可使用ETL过程当中产生的日志信息区查看数据处理的状况。

相关文章
相关标签/搜索