一、缓慢变化维:

表示源表中的数据被更新,我们开发Informatica的缓慢变换维,让目标表中的数据跟着更新(原有的做更新,没有的做插入)。

二、案例:

需求:

Informatica使用操作流程--缓慢变化维 案例9_oracle

--源表(oracle)             ----->      目标表
--OLTP(oracle的oltp用户下) ----->      EDW层(oracle的edw01用户下)
--department                   ----->      department  地区维度表说明,源表主要字段

Informatica使用操作流程--缓慢变化维 案例9_数据_02

三、开发流程简述:

1、定义源

Informatica使用操作流程--缓慢变化维 案例9_表数据_03

Informatica使用操作流程--缓慢变化维 案例9_数据_04

2、定义目标,生成并执行sql

Informatica使用操作流程--缓慢变化维 案例9_表数据_05

Informatica使用操作流程--缓慢变化维 案例9_表数据_06

3、定义映射

--创建映射M_EDW_DEPARTMENT

Informatica使用操作流程--缓慢变化维 案例9_表数据_07

--拖入源表和目标表,使用Lookup查找组件查找目标,根据查找的结果进行判断

Informatica使用操作流程--缓慢变化维 案例9_oracle_08

Informatica使用操作流程--缓慢变化维 案例9_数据_09

Informatica使用操作流程--缓慢变化维 案例9_表数据_10

--使用Router进行不同条件的分发,

Informatica使用操作流程--缓慢变化维 案例9_表数据_11

Informatica使用操作流程--缓慢变化维 案例9_oracle_12

--使用更新策略转换(插入、更新)

Informatica使用操作流程--缓慢变化维 案例9_数据_13

Informatica使用操作流程--缓慢变化维 案例9_数据_14

--拖入两个目标表,连接映射,ctrl+S保存

Informatica使用操作流程--缓慢变化维 案例9_oracle_15

4、创建任务,添加连接关系,修改任务映射,ctrl+S保存

Informatica使用操作流程--缓慢变化维 案例9_数据_16

Informatica使用操作流程--缓慢变化维 案例9_oracle_17

Informatica使用操作流程--缓慢变化维 案例9_数据_18

Informatica使用操作流程--缓慢变化维 案例9_oracle_19

5、创建工作流,连接任务,保存,通过任务启动工作流。

Informatica使用操作流程--缓慢变化维 案例9_表数据_20

Informatica使用操作流程--缓慢变化维 案例9_表数据_21

6、M端:工作流调度监控

Informatica使用操作流程--缓慢变化维 案例9_表数据_22

7、目标数据库查验数据

Informatica使用操作流程--缓慢变化维 案例9_oracle_23

8、更新和添加源数据,从新执行 缓慢变化维,检验效果

--更新源表数据

UPDATE department SET dept_name = '海淀', full_name = '海淀', dept_no = 'haidian' WHERE dept_id = '0000000349';
UPDATE department SET dept_name = '丰台', full_name = '丰台', dept_no = 'haidian' WHERE dept_id = '0000000350';
UPDATE department SET dept_name = '朝阳', full_name = '朝阳', dept_no = 'haidian' WHERE dept_id = '0000000351';
UPDATE department SET dept_name = '东城', full_name = '东城', dept_no = 'haidian' WHERE dept_id = '0000000352';
UPDATE department SET dept_name = '大兴', full_name = '大兴', dept_no = 'haidian' WHERE dept_id = '0000000353';
UPDATE department SET dept_name = '西城', full_name = '西城', dept_no = 'haidian' WHERE dept_id = '0000000354';

--插入源表数据

insert into DEPARTMENT (DEPT_ID, AREA_ID, LEVEL_NO, DEPT_NO, DEPT_NAME, FULL_NAME, DEPT_TYPE_NO, DEPT_STATUS, DEPT_GROUP, CREATOR_ID, CREATE_TIME, DOMAIN_NO)
values ('0000008888', '0000008888', '107078888', '888', '天坛社区', '天坛社区', '5', null, null, null, to_date('19-12-2019 12:12:00', 'dd-mm-yyyy hh24:mi:ss'), '0000008888');

--从新启动任务,插入一条,更新743条

Informatica使用操作流程--缓慢变化维 案例9_数据_24

--再次查验目标数据

Informatica使用操作流程--缓慢变化维 案例9_数据_25