DataStage系列教程 (Change Capture)


Change Capture可以比較具有相同列的數據集的差異,得出一個數據集(After)在另一個數據庫(Before)的基礎上產生的哪些變化。變化類型如表1:

變化代碼 變化 中文說明
0 no change 無變化
1 insert 新增
2 delete 刪除
3 edit 有變化
表1 變化種類

1 JOB示例

如圖1,我們最終做出的JOB會是這個樣子。它包含3個序列文件組件data_before、data_after、cmp_result;2個排序組件sort_before、sort_after;一個change capture組件cc。

JOB從2個結構相同的源文件抽取數據,最終比較出data_after在data_before上產生了哪些改變,然后將改變存入cmp_result。

image

圖1 JOB示例

2 組件簡介

2.1 階段

階段選項卡如圖2。

image

圖2 階段選項卡

 
2.1.1 Change Mode

先介紹一下選項里的Change Mode,它有3種模式,官方解釋如下:

All Keys, Explicit Values means that value columns must be defined, but all other columns are key columns unless they are excluded.
Explicit Keys & Values means that key & value columns must be explicitly defined.
Explicit Keys, All Values means that key columns must be defined, but all other columns are value columns unless they are excluded.

 

我的理解如表2:

模式名稱 說明
All Keys, Explicit Values 明確指定值。
這時屬性中會出現Excluded Keys和Change Values這2個文件夾,我們需要在這2個文件夾添加屬性,或者只指定Change Values。
除了Excluded Keys、Change Values,其他的都是key,用來確定一條記錄。
Explicit Keys & Values 明確指定鍵和值。
我們需要在Change Keys和Change Values文件夾中添加屬性。
Explicit Keys, All Values 明確指定鍵。
需要在Excluded Values和Change Keys填寫屬性,或者只指定Change Keys。

表2 Change Mode說明

說明:我一般都是采用Explicit Keys, All Values,然后指定數據集的主鍵,如圖2。其他模式您可以自己嘗試。

 

2.2 其他選項

接下來介紹選項。用來確定比對結果輸出和是否需要在日志中記錄統計信息。

屬性 說明
drop output for copy 沒有發生變化的記錄是否要從輸出中刪除。
True:刪除,即不輸出;False:輸出。
drop output for delete 在data_after中刪除的記錄是否要從輸出中刪除。
即data_after中沒有,data_before中有的記錄。
drop output for edit data_after和data_before不一致的記錄是否要從輸出中刪除。
drop output for insert data_after中有而data_before中沒有的記錄。
log statistics 是否在日志中輸出統計信息。日志會記錄數據集的記錄數,新增、刪除的記錄數等。

3 結果展示

3.1 data_before

code    name    salary  entryDate
001     hong    100     2014-01-12
002     bai     105     2014-01-22
003     wang    110     2014-02-01
004     lan     102     2014-02-02

3.2 data_after

code    name    salary  entryDate
001     hong    120     2014-01-12
002     bai     105     2014-01-22
004     lan     102     2014-02-02
005     hei     103     2014-03-02

3.3 cmp_result

001     hong    120     2014-01-12      3
003     wang    110     2014-02-01      2
005     hei     103     2014-03-02      1

4 附JOB導出文件

點擊下載


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM