informatica增量抽取


1.需求

将ods_cust_info表抽取到edw层,当表中有新增记录,只抽取新增记录,而不全表重新执行抽取。

2.操作

1.导入源表:从oltp用户下导入ods_cust_info表。

2.定义目标表:根据源表,在目标表新增edw_date日期字段,命名为edw_cust_info表,在edw用户下创建该表。

3.创建映射:

使用lookup查找转换组件,查找目标表edw_cust_info,设置目标表的edw_cust_id与源表的ods_cust_id相等,若没有相等,则说明是新增的数据,抽取到目标表中。
在这里插入图片描述
在这里插入图片描述
设置连接来源是edw层。
在这里插入图片描述
使用update更新策略转换组件,标记要插入、删除、更新或拒绝的记录的表达式,本需求是要求当edw_cust_id为空的时候就插入到表中,否则拒绝插入。
把源表的字段全部拉到update组件,再从lookup组件中把edw_cust_id字段拉到update组件,当edw_cust_id为空时,就插入源表的所有字段到目标表,若edw_cust_id不为空,则不插入。(这就是增量抽取)
在这里插入图片描述
使用expression表达式转换组件,添加一个日期时间字段,最终再连接到目标表,保存映射
在这里插入图片描述
4.创建任务:
清空表truncate不需要打勾,因为我们需要进行增量抽取,有新增记录就抽取进目标表。
在这里插入图片描述
5.创建工作流,保存执行,可以看到导入了3000条数据。
在这里插入图片描述

3.测试

1.在ods_cust_info表中新添加2条数据,记得添加完成后要提交。
在这里插入图片描述
2.重新执行工作流,看见只会导入新添加的2条数据。
在这里插入图片描述

发布了56 篇原创文章 · 获赞 34 · 访问量 3651

猜你喜欢

转载自blog.csdn.net/MicoOu/article/details/103674740
今日推荐