ETL入门系列 之 ETL是什么

ETL定义

字面含义:ETL是抽取、转换、加载的缩写。

简单定义:将数据从OLTP系统中转移到数据仓库中的一系列操作的集合。

ETL应用范围

  1. 抽取: 一般抽取过程需要连接到不同的数据源,以便为随后的步骤提供数据。这一部分看上去简单而琐碎,实际上它是ETL解决方案成功实施的一个主要障碍。

  2. 转换: 在抽取和加载之间,任何对数据的处理过程都是转换。这些处理过程通常包括(但不限于)下面一些操作。

    • 移动数据
    • 根据规则验证数据
    • 数据内容和数据结构的修改
    • 集成多个数据源的数据
    • 根据处理后的数据计算派生值和聚集值
  3. 加载: 将数据加载到目标系统的所有操作。

ETL解决方案的深化过程

第一代,使用手工编程、脚本的方式来完成。

第二代,依据设计好的ETL工作流来自动生成所需代码。

第三代,采用基于引擎的架构,可以执行所有的数据处理进程,还可以将所有的数据库连接和转换规则作为元数据存储起来。

ETL基本构成

  1. 作业,ETL解决方案的代理。
  2. 转换,基础的构建部分。
  3. 步骤,组成一个转换业务流程。
  4. 跳(hop),步骤之间的连接关系由跳(hop)来决定。

典型的数据仓库架构

典型的数据仓库架构

ETL工具的其他用途

  1. 数据迁移
  2. 数据同步

其他相关

ELT

抽取、加载和转换的简称,同ETL在数据整合的方法上略微不同。在ELT的情况下,数据首先从源数据进行抽取、加载到目标数据库中,再转换为所需要的格式。所有大数据量处理全部放在目标数据库中进行。这种做法的好处在于,一般情况下,数据库系统更适合处理负荷在百万级以上的数据储存民。数据库系统也通常会对I/O(吞吐量)进行优化,用来提高数据处理速度。

EII

除了物理数据集成方式,还有虚拟数据集成方式也可以满足用户访问数据的要求。这种虚拟数据集成试就是企业信息集成,也就是EII。如数据联邦和数据虚拟化,也都是描述同样的事情。

这种方法的主要优点就是数据永远都是最新的,不需要额外的存储层,没有冗余数据。缺点就是使用虚拟方法来管理大量的、清洗后的、时效性强的数据是一个非常具有挑战性的工作。

虚拟和物理数据集成比较

虚拟和物理数据集成比较

推荐阅读更多精彩内容