0
我有一個場景,我需要運行兩個Hadoop
作業計算n-gram
兩個不同語料庫的統計信息,並確保他們將每個n-gram(以及它的分數)寫入同一個reducer(以便將來我可以在本地讀取數據並比較和比較兩個語料庫中的兩個分數)。對於例如如果作業J1
在機器M
上執行其中一個減速器並在本地寫入n-gram N
,我希望作業J2
也將n-gram N
寫入同一臺機器M
。將兩個不同Hadoop作業的輸出寫入同一組reducer
我知道如何計算語料庫的n-gram統計數據(僅供參考,可參考Google的this發佈)。我還定義了我的自定義分區(基於n-gram中的前兩個單詞進行散列)。現在如何確保同一個程序的兩個不同運行(在兩個不同的語料庫上)最終將相應的輸出寫入同一個reducer?