个性化阅读
专注于IT技术分析

什么是ETL?

本文概述

ETL代表提取转换和加载。 ETL将这三个数据库功能全部组合到一个工具中, 以从一个数据库中获取数据并将其放置到另一个数据库中。

提取:提取是从数据库中获取(读取)信息的过程。在此阶段, 将从多种或不同类型的源中收集数据。

转换:转换是将提取的数据从其先前的形式转换为所需形式的过程。数据可以放入另一个数据库。可以通过使用规则或查找表或通过将数据与其他数据组合来进行转换。

加载:加载是将数据写入目标数据库的过程。

ETL用于通过提取, 转换和加载三个步骤来集成数据, 并用于混合来自多个源的数据。它通常用于构建数据仓库。

在ETL过程中, 数据是从源系统中提取的, 并转换成可以检查的格式并存储到数据仓库或任何其他系统中。 ETL是另一种但又相关的方法, 旨在将处理过程下推到数据库以提高性能。

例:

我们以一个零售商店为例, 该商店有不同的部门, 例如销售, 市场, 物流等。每个部门都独立处理客户的信息, 每个部门存储数据的方式也大不相同。销售部门按客户名称存储它, 而营销部门按客户ID存储它。现在, 如果我们要检查客户的历史记录, 并想知道他/她由于各种活动而购买了哪些不同的产品;这将非常乏味。

解决方案是使用数据仓库使用ETL以统一的结构存储来自不同来源的信息。 ETL工具从所有这些数据源中提取数据并转换数据(例如应用计算, 合并字段, 删除不正确的数据字段等), 然后加载到数据仓库中。 ETL可以将唯一的数据集转换为统一的结构。之后, 我们将使用BI工具从这些数据中找出有意义的报告, 仪表板和可视化。

需要ETL

产生ETL的原因有很多:

  • ETL帮助公司分析其业务数据以做出关键的业务决策。
  • 数据仓库提供了一个共享的数据存储库。
  • ETL提供了一种将数据从各种来源移到数据仓库中的方法。
  • 随着数据源的更改, 数据仓库将自动更新。
  • 设计良好且有据可查的ETL系统对于数据仓库项目的成功至关重要。
  • 事务数据库无法回答ETL可以解决的复杂业务问题。
  • 设计良好且有据可查的ETL系统对于数据仓库项目的成功至关重要。
  • ETL过程允许对源系统和目标系统之间的样本数据进行比较。
  • ETL过程可以执行复杂的转换, 并且需要额外的区域来存储数据。
  • ETL帮助将数据迁移到数据仓库中。
  • ETL是一个较早定义的过程, 用于访问源数据并将其处理到目标数据库中。
  • 出于商业目的, ETL提供了深厚的历史背景。
  • 它被编码并且可以在不需要技术技能的情况下重复使用, 从而有助于提高生产率。

ETL工作

从一个或多个来源提取数据, 然后将其复制到数据仓库。当我们处理大量数据和多源系统时, 数据将得到合并。 ETL用于将数据从一个数据库迁移到另一数据库。 ETL是需要将数据加载到数据集市和数据仓库以及从数据集市和数据仓库加载数据的过程。 ETL是一种过程, 还用于将数据从一种格式转换为另一种类型。

数据仓库中的ETL流程

我们需要定期加载我们的数据仓库, 以便它可以达到促进业务分析的目的。需要预期来自一个或多个操作系统的数据并将其复制到数据仓库中。数据仓库中的挑战是多年来集成和重新排列大量数据。从源系统提取数据并将其带入数据仓库的过程通常称为ETL。 ETL的方法和任务是众所周知的。数据必须在试图集成它们的应用程序或系统之间共享。

ETL是一个三步过程:

什么是ETL

1.提取

在此步骤中, 将数据从源系统提取到ETL服务器或登台区域。在此区域进行了转换, 因此不会降低源系统的性能。如果将损坏的数据直接从源系统复制到数据仓库中, 那么回滚将是一个挑战。暂存区允许在提取的数据移入数据仓库之前对其进行验证。

需要将系统集成到具有不同DBMS, 硬件, 操作系统和通信协议的数据仓库中。在物理上提取和加载数据之前, 需要逻辑数据映射。该数据图描述了源数据和目标数据之间的所有关系。

有三种提取数据的方法。

  1. 全提取
  2. 部分提取-没有更新通知
  3. 部分提取-有更新通知

无论我们使用的是哪种提取方法, 这都不会影响源系统的性能和响应时间。这些源系统是实时生产系统。

提取期间的验证:

  • 用源数据确认记录
  • 数据类型应检查
  • 它将检查所有钥匙是否到位
  • 我们必须确保没有垃圾邮件/有害数据被加载
  • 删除所有类型的片段和重复数据。

2.转型

从源服务器提取的数据是原始数据, 不能以其原始形式使用。因此, 应该对数据进行映射, 清理和转换。转换是ETL流程可添加值并更改数据(例如BI报表)的重要步骤。

在此步骤中, 我们对提取的数据应用了一组函数。不需要任何转换的数据称为直接移动或传递数据。

在这一步中, 我们可以对数据应用定制的操作。例如, 表中的名字和姓氏在不同的列中, 可以在加载之前将它们连接起来。

转换期间的验证:

  1. 过滤:要加载, 请仅选择特定的列
  2. 字符集转换和编码处理
  3. 数据阈值和验证检查
  4. 例如, 年龄不能超过两位数
  5. 必填字段不应留为空白。
  6. 转置行和列。
  7. 要合并数据, 请使用查找

3.载入中

将数据加载到数据仓库中是ETL过程的最后一步。需要在短时间内将大量数据加载到数据仓库中。为了提高性能, 应优化负载。

如果加载失败, 则恢复机制应该在那里从故障点重新启动, 而不会丢失数据完整性。数据仓库管理员需要根据服务器性能监视, 恢复和取消负载。

装载类型

  1. 初始负载-填满整个数据仓库表
  2. 增量负载-必要时应用更改。
  3. 完全刷新-擦除一个或多个表的内容并重新加载新数据。

包起来

  • ETL被称为提取, 加载和转换。
  • ETL提供了将数据从各种来源移到数据仓库中的方法。
  • 第一步包括将数据从源系统提取到暂存区域中。
  • 转换步骤包括对从源中提取的数据进行清洗和转换。
  • 将数据加载到数据仓库中是ETL过程的最后一步。

赞(0)
未经允许不得转载:srcmini » 什么是ETL?

评论 抢沙发

评论前必须登录!