2014-02-15 25 views
0

我在Hadoop中遇到了一個非常特殊的問題。在Hadoop中合併兩個不同的文件

我有兩個文件用戶列表和* raw_data *。現在raw_data是一個非常大的文件,userlist比另一個文件要小。

我必須首先確定映射器的數量,然後我的用戶列表必須分解成等於映射器數量的碎片。之後它必須加載到分佈式緩存中,並且必須與userlist進行比較並執行一些分析並將其寫入reducer。

請建議。

謝謝。

+0

您是否意外地寫了'「......它必須與用戶列表進行比較並執行一些分析」「,而不是」......它必須與原始數據進行比較並執行一些分析「? – vefthym

回答

0

我不明白你爲什麼要分割用戶列表文件。如果它很小,則將整個用戶列表文件加載到分佈式緩存。然後在map類的設置方法中,每個mapper都可以訪問整個userlist文件。而且,您可以根據自己喜歡的設置方法找出映射器的數量並對其進行分區。