- ETL测试教程
- ETL测试 - 首页
- ETL测试 - 简介
- ETL测试 - 任务
- ETL与数据库测试的比较
- ETL测试 - 分类
- ETL测试 - 挑战
- ETL - 测试人员的角色
- ETL测试 - 技术
- ETL测试 - 流程
- ETL测试 - 场景(测试用例)
- ETL测试 - 性能
- ETL测试 - 可扩展性
- ETL测试 - 数据准确性
- ETL测试 - 元数据
- ETL测试 - 数据转换
- ETL测试 - 数据质量
- ETL测试 - 数据完整性
- ETL测试 - 备份恢复
- ETL测试 - 自动化
- ETL测试 - 最佳实践
- ETL测试 - 面试问题
- ETL测试有用资源
- ETL测试 - 快速指南
- ETL测试 - 有用资源
- ETL测试 - 讨论
ETL测试 – 简介
数据仓库系统中的数据是使用ETL(提取、转换、加载)工具加载的。顾名思义,它执行以下三个操作:
从您的事务系统中提取数据,该系统可以是Oracle、Microsoft或任何其他关系数据库;
通过执行数据清洗操作来转换数据;然后
将数据加载到OLAP数据仓库中。
您还可以使用ETL工具从平面文件(如电子表格和CSV文件)中提取数据,并将其加载到OLAP数据仓库中,以进行数据分析和报告。让我们来看一个例子来更好地理解它。
示例
假设有一家制造公司拥有多个部门,例如销售、人力资源、物料管理、EWM等。所有这些部门都有各自的数据库,它们用于维护与其工作相关的资料,并且每个数据库都有不同的技术、架构、表名、列等。现在,如果公司想分析历史数据并生成报表,则应将所有这些数据源中的数据提取并加载到数据仓库中,以保存用于分析工作。
ETL工具从所有这些异构数据源中提取数据,转换数据(例如应用计算、连接字段、键、删除不正确的数据字段等),并将其加载到数据仓库中。之后,您可以使用各种商业智能(BI)工具来使用此数据生成有意义的报表、仪表板和可视化。
ETL工具和BI工具的区别
ETL工具用于从不同的数据源提取数据、转换数据并将其加载到DW系统中;但是,BI工具用于为最终用户生成交互式和即席报表、为高级管理人员生成仪表板、为每月、每季度和每年的董事会会议生成数据可视化。
最常见的ETL工具包括:SAP BO Data Services (BODS)、Informatica – PowerCenter、Microsoft – SSIS、Oracle Data Integrator ODI、Talend Open Studio、Clover ETL开源等。
一些流行的BI工具包括:SAP Business Objects、SAP Lumira、IBM Cognos、JasperSoft、Microsoft BI平台、Tableau、Oracle Business Intelligence Enterprise Edition等。
ETL流程
现在让我们更详细地讨论ETL过程中涉及的关键步骤:
数据提取
它涉及从不同的异构数据源提取数据。从事务系统提取数据的方式因需求和使用的ETL工具而异。通常通过在非营业时间运行计划作业来完成,例如在晚上或周末运行作业。
数据转换
它涉及将数据转换为适合轻松加载到DW系统的格式。数据转换涉及应用计算、连接以及在数据上定义主键和外键。例如,如果您想要数据库中不存在的总收入百分比,您将在转换中应用百分比公式并加载数据。同样,如果您在不同的列中拥有用户的姓名和姓氏,则可以在加载数据之前应用连接操作。某些数据不需要任何转换;此类数据称为**直接移动**或**直通数据**。
数据转换还包括数据校正和数据清洗、删除不正确的数据、不完整的数据格式以及修复数据错误。它还包括在将数据加载到DW系统之前进行数据完整性和格式化不兼容的数据。
将数据加载到DW系统
它涉及将数据加载到DW系统中以进行分析报告和信息处理。目标系统可以是简单的分隔符平面文件或数据仓库。
ETL工具功能
典型的基于ETL工具的数据仓库使用暂存区、数据集成和访问层来执行其功能。它通常是一个三层架构。
**暂存层** - 暂存层或暂存数据库用于存储从不同的源数据系统提取的数据。
**数据集成层** - 集成层转换来自暂存层的数据并将数据移动到数据库,在该数据库中,数据被排列成层次结构组,通常称为**维度**,以及**事实**和**聚合事实**。DW系统中事实和维度表的组合称为**模式**。
**访问层** - 访问层由最终用户使用,用于检索数据以进行分析报告和信息处理。
下图显示了三层如何相互交互。