淺談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:
After data set:
Data set output:
Difference Stage
Stage類型:Processing Stage
功能說明:
按字段比較兩個檔案,找出不同的記錄。(兩個檔案before和after,以before為準,與after檔案中的記錄進行比較,找出before在after檔案中沒有或者有的記錄)
比較政策同上.
Difference stage 執行個體
Before data set:
After data set:
Data set output:
Compare Stage
Stage類型:Processing Stage
功能說明: 按字段對比兩個已經分類的有序的檔案
Compare stage 執行個體
The first data set:
The second data set:
Data set output:
我們再來看看change capture和difference stage的output界面:
Change capture:
Difference:
由此可見:
Capture Change Stage 輸出的是以 after 輸入流為基礎,外加 change code字段.
Difference Stage 的輸出是以 before 輸入流為基礎,外加 changecode 字段
compare除了resualt_code還會把first和second的所有字段都輸出,且字段不能人工填寫