📜  数据仓库:ETL过程

📅  最后修改于: 2020-12-30 00:34:49             🧑  作者: Mango

ETL(提取,转换和加载)过程

什么是ETL?

从源系统提取信息并将其带入数据仓库的机制通常称为ETL ,它代表提取,转换和加载

ETL流程需要各个利益相关者的积极投入,包括开发人员,分析师,测试人员,高层管理人员,并且在技术上存在挑战。

为了保持其作为决策者工具的价值,数据仓库技术需要随着业务变化而变化。 ETL是数据仓库系统的一种重复使用的方法(每天,每周,每月),并且需要灵活,自动化并且有据可查。

ETL如何工作?

ETL包含三个单独的阶段:

萃取

  • 提取是从源系统提取信息以进一步在数据仓库环境中使用的操作。这是ETL流程的第一步。
  • 提取过程通常是ETL中最耗时的任务之一。
  • 源系统可能很复杂且文档记录不充分,因此很难确定需要提取哪些数据。
  • 必须定期提取几次数据,以将所有更改的数据提供给仓库并保持最新状态。

洁面

清理阶段在数据仓库技术中至关重要,因为它可以提高数据质量。 ETL工具中发现的主要数据清理功能是校正和均质化。他们使用特定的词典来纠正键入错误并识别同义词,并使用基于规则的清理来强制执行特定于域的规则并定义值之间的适当关联。

以下示例显示了数据清理的基本要求:

如果企业希望与用户或其供应商联系,则必须提供完整,准确且最新的联系地址,电子邮件地址和电话号码列表。

如果客户或供应商打电话,则响应人员应该能够迅速在企业数据库中找到该人,但这需要在数据库中列出呼叫者的姓名或他/她的公司名称。

如果用户出现在数据库中时,具有两个或两个以上稍有不同的名称或不同的帐号,则很难更新客户的信息。

转型

转型是和解阶段的核心。它将记录从其操作源格式转换为特定的数据仓库格式。如果我们实现三层体系结构,则此阶段将输出我们的协调数据层。

在此阶段必须纠正以下几点:

  • 文字松散可能会隐藏有价值的信息。例如,XYZ PVT Ltd并未明确表明这是一家有限合伙公司。
  • 不同的格式可用于单个数据。例如,数据可以另存为字符串或三个整数。

以下是旨在填充已对帐数据层的主要转换过程:

  • 可对存储格式和度量单位进行转换和标准化,以使数据统一。
  • 匹配将不同来源中的等效字段关联起来。
  • 减少源字段和记录数量的选择。

清洗转换过程通常在ETL工具中紧密相连。

载入中

加载是将数据写入目标数据库的过程。在加载步骤中,有必要确保正确执行加载并使用尽可能少的资源。

加载可以通过两种方式进行:

  • 刷新:数据仓库数据已完全重写。这意味着将替换较旧的文件。刷新通常与静态提取结合使用,以最初填充数据仓库。
  • 更新:仅将应用于源信息的那些更改添加到数据仓库中。通常在不删除或修改现有数据的情况下执行更新。此方法与增量提取结合使用,可以定期更新数据仓库。

选择一个ETL工具

选择合适的ETL工具是选择ODS或数据仓库应用程序重要性的重要决定。需要ETL工具提供对多个数据源的协调访问,以便可以从中提取相关数据。 ETL工具通常包含用于数据清理,重组,转换,聚合,计算以及将信息自动加载到对象数据库中的工具。

ETL工具应提供一个简单的用户界面,该界面允许使用点击方法指定数据清除和数据转换规则。定义完所有映射和转换后,ETL工具应自动生成通常在批处理模式下运行的数据提取/转换/加载程序。