ETL 抽取方案
ETL 抽取方案 ETL 过程中的主要环节就是数据抽取、数据转换和加工、数据装载。为了实现这些功 能,ETL 工具会进行一些功能上的扩充,例如工作流、调度引擎、规则引擎、脚本支持、 统计信息等。 数据抽取 数据抽取是从数据源中抽取数据的过程。实际应用中,数据源较多采用的是关系数据库。 从数据库中抽取数据一般有以下几种方式: 2.1.1 全量抽取 全量抽取类似于数据迁移或数据复制,它将数据源中的表或视图的数据原封不动的从数 据库中抽取出来,并转换成自己的ETL 工具可以识别的格式。全量抽取比较简单。 2.1.2 增量抽取 增量抽取只抽取自上次抽取以来数据库中要抽取的表中新增或修改的数据。在ETL 使 用过程中,增量抽取较全量抽取应用更广。如何捕获变化的数据是增量抽取的关键。对捕获 方法一般有两点要求:准确性,能够将业务系统中的变化数据按一定的频率准确地捕获到; 性能,不能对业务系统造成太大的压力,影响现有业务。目前增量数据抽取中常用的捕获变 化数据的方法有: 2.1.2.1 触发器方式(又称快照式): 在要抽取的表上建立需要的触发器,一般要建立插入、修改、删除三个触发器,每当源 表中的数据发生变化,就被相应的触发器将变化的数据写入一个临时表,抽取线程从临时表 中抽取数据,临时表中抽取过的数据被标记或删除。 优点:数据抽取的性能高,ETL 加载规则简单,速度快,不需要修改业务系统表结构