本文将介绍设计和 实现仓库 ETL 过程,并了解仓库的性能和 安全问题
简介 数据集成是数据仓库中的关键概念
ETL(数据的提取、转换和加载)过程的设计和实现是数据仓库解决方案中极其重要的一部分
ETL 过程用于从多个源提取业务数据,清理数据,然后集成这些数据,并将它们装入数据仓库数据库中,为数据分析做好准备
ETL 过程设计 尽管实际的 ETL 设计和实现在很大程度上取决于为数据仓库项目选择的 ETL 工具,但是高级的系统化 ETL 设计将有助于构建高效灵活的 ETL 过程
在深入研究数据仓库 ETL 过程的设计之前,请记住 ETL 的经验法则:―ETL 过程不应修改数据,而应该优化数据
‖如果您发现需要对业务数据进行修改,但不确定这些修改是否会更改数据本身的含义,那么请在开始 ETL 过程之前咨询您的客户
调制的 ETL 过程设计 由于其过程化特性以及进行数百或数千个操作的可能性,所以以精确方式设计 ETL 过程,从而使它们变得高效、可伸缩并且可维护就极为重要
ETL 数据转换操作大致可以分为 6 个组或模块:数据的提取、验证、清理、集成、聚集和装入
要安排好这些组,按照使这一过程获得最大简化、具有最佳性能和易于修改的逻辑次序来执行操作
下图中展示了执行的次序
ETL 数据转换过程的功能模块设计 在项目的业务需求和数据分析阶段,我们创建了数据映射信息
有许多中记录数据映射的方式;ETL 数据映射表是指导 ETL 过程设计的最佳方式
您还可以将该表用作与业务客户就数据映射和 ETL 过程问题进行交流的方式
ETL 数据映射表有不同的级别,如实体级别和属性级别
每个级别中都具有不同级别的详细数据映射信息
下表是一个实体级别的 ETL 数据映射表的简化例子
该表中的每个―X‖表示到操作细节或较低级数据映射文档的链接
ETL 实体映射表 源 验证 清理