ETL - 简介


ETL 代表提取、转换和加载。ETL工具从不同的RDBMS源系统中提取数据,对数据进行转换(例如应用计算、连接等),然后将数据加载到数据仓库系统。数据以维度表和事实表的形式加载到DW系统中。

萃取

  • ETL 加载期间需要暂存区。需要暂存区的原因有多种。

  • 源系统仅可在特定时间段内提取数据。该时间段小于总数据加载时间。因此,暂存区允许您在时隙结束之前从源系统中提取数据并将其保留在暂存区中。

  • 当您想要从多个数据源一起获取数据或者想要将两个或多个系统连接在一起时,需要暂存区域。例如,您将无法执行连接两个物理上不同的数据库中的两个表的 SQL 查询。

  • 不同系统的数据提取时间段因时区和运行时间而异。

  • 从源系统提取的数据可用于多个数据仓库系统、操作数据存储等。

  • ETL 允许您执行复杂的转换,并且需要额外的空间来存储数据。

ETL提取

转换

在数据转换中,您对提取的数据应用一组函数以将其加载到目标系统中。不需要任何转换的数据称为直接移动或传递数据。

您可以对从源系统提取的数据应用不同的转换。例如,您可以执行自定义计算。如果您想要销售收入总和并且该数据不在数据库中,您可以在转换期间应用SUM公式并加载数据。

例如,如果表中的名字和姓氏位于不同的列中,则可以在加载之前使用连接。

加载

在加载阶段,数据被加载到最终目标系统中,它可以是平面文件或数据仓库系统。