最近公司在做数据总线的工作,需要用kettle这个ETL工具,所以花了一些时间来研究研究,喜欢的话点个赞
一、数据抽取
数据抽取,是指从源数据源系统抽取目的数据源系统需要的数据,这里的源数据源就是数据输入的各种类型的数据库(一般是关系数据库),目的数据源就是数据输出的数据库。
数据抽取又分为全量抽取和增量抽取。
二、全量抽取
全量抽取,类似于数据迁移或数据复制,它将数据源中的表或视图的数据原封不动的从数 据库中抽取出来,并转换成自己的ETL 工具可以识别的格式。
全量抽取比较简单。
三、增量抽取
增量抽取,只抽取自上次抽取以来数据库中要抽取的表中新增或修改的数据。在ETL 使用过程中,增量抽取较全量抽取应用更广。如何捕获变化的数据是增量抽取的关键。对捕获方法一般有两点要求:准确性,能够将业务系统中的变化数据按一定的频率准确地捕获到;性能,不能对业务系统造成太大的压力,影响现有业务。
增量抽取更常用、更重要、更复杂,所以重点详细介绍
(一)增量数据抽取常用的捕获变化数据的方法
1.触发器方式(又称快照式)(会降低源数据库的性能,所以用户一般不会同意滴)
介绍
在要抽取的表上建立需要的触发器,一般要建立插入、修改、删除三个触发器,每当源表中的数据发生变化,就被相应的触发器将变化的数据写入一个临时表,抽取线程从临时表中抽取数据,临时表中抽取过的数据被标记或删除
优点
数据抽取的性能高,ETL 加

346

被折叠的 条评论
为什么被折叠?



