datastage---join stage,lookup stage,merge stage的區別

轉載:http://www.cognoschina.net/home/space.php?uid=40869&do=blog&id=29707

join stage:多個輸入鏈接,一個輸出鏈接。會對輸入數據進行按鍵分區,確保相同鍵值的記錄位於同一分區並用同一節點進行處理,故每次只取較少行,所需內存小。對於不匹配記錄按照鏈接方式的不同而有所差異。

merge stage:多個輸入鏈接,其中一個表示主數據集,其餘表示更新數據集,一個輸出鏈接和多個reject鏈接。可在鏈接順序中指定更新鏈接與reject鏈接的對應關係。會對輸入數據進行按鍵分區,確保相同鍵值的記錄位於同一分區並用同一節點進行處理,故每次只取較少行,所需內存小。對不匹配記錄會放入reject指定的數據輸出中。要求主數據集與更新數據集均無重複值。

lookup stage:一個主鏈接,一個或多個引用鏈接,一個輸出鏈接,一個reject鏈接。查找操作基於引用表的查找鍵列。查找鍵列在lookup中定義。查找數據與引用數據會全部讀入內存,故需內存較大。無需對數據排序,但是應注意查找表的分區方式,與引用表相同或者採用全部分區方式。

轉載:http://www.itqsc.com/dy6/Article/work/201103/235.html

Merge的處理
與Join Stage相似
Merge前需要做Key值的去重操作
只能有一個Master Link,可以有多個Update Link,每個Update Link可以對應一個Update Reject Link
Unmatched Masters Mode選項對Output有重要影響。

Lookup的處理
對連接字段可否爲空必須一致
對沒有查找到的數據需Continue處理
當有多個分區時,爲了確保數據能正確連接,需要對Lookup Link 做Entire分區

Lookup、Merge、Join的區別
內存的使用方式不同
不匹配行的處理方式不同
輸入需求不同(排序、去重)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章