天天看点

浅谈Compare Difference Change Capture Stage

浅谈Compare    Difference   Change Capture Stage

Compare, Difference 和Change Capture Stage 是 Parallel job 中三个用于比较数据集合异同的 stage.

Change Capture Stage

功能特点:

Change Capture Stage有两个输入,分别标记为before link 及after link。输出的数据表示before link 和after link的区别.

使用要点:  

key及value的说明:

key值是比较的关键值,value是当key值相同是作进一步比较用的。  

change mode选项说明:  

All keys,Explicit Values        需要指定value,其余字段为key  

Explicit Keys&Values             key及value都需要指定  

Explicit Keys,All Values        需要指定key,其余的字段为value  

输出策略说明:

Drop Output For Copy  

False:保留before及afte link中key值相同的行  

True:删除before及afte link中key值相同的行  

Drop Output For Delete  

False:保留before link中有但是after link中没有的key值所在的行  

True:删除before link中有但是afte link中没有的key值所在的行  

    Drop Output For Edit  

False:保留key值相同,value不同的行  

True:删除key值相同,value不同的行  

    Drop Output For Insert  

False:保留before link中没有但afte link中有的key值所在的行  

True:删除before link中没有但afte link中有的key值所在的行  

Change capture stage 实例

Before data set:

浅谈Compare Difference Change Capture Stage

After data set:

浅谈Compare Difference Change Capture Stage

Data set output:

浅谈Compare Difference Change Capture Stage

Difference Stage

Stage类型:Processing Stage  

功能说明:  

按字段比较两个文件,找出不同的记录。(两个文件before和after,以before为准,与after文件中的记录进行比较,找出before在after文件中没有或者有的记录)    

比较策略同上. 

Difference stage 实例

Before data set:

浅谈Compare Difference Change Capture Stage

After data set:

浅谈Compare Difference Change Capture Stage

 Data set output:

浅谈Compare Difference Change Capture Stage

 Compare Stage

Stage类型:Processing Stage  

功能说明:  按字段对比两个已经分类的有序的文件  

Compare stage 实例

The first data set: 

浅谈Compare Difference Change Capture Stage

 The second data set:

浅谈Compare Difference Change Capture Stage

Data set output:

浅谈Compare Difference Change Capture Stage

我们再来看看change capture和difference stage的output界面:

Change capture:

浅谈Compare Difference Change Capture Stage

Difference:

浅谈Compare Difference Change Capture Stage

 由此可见:

Capture Change Stage 输出的是以 after 输入流为基础,外加 change code字段.

Difference Stage 的输出是以 before 输入流为基础,外加 changecode 字段

compare除了resualt_code还会把first和second的所有字段都输出,且字段不能人工填写

继续阅读