2015-06-06 77 views
0

如果存在僅包含映射且沒有reduce的作業,並且要處理的所有數據值都映射到單個鍵,那麼該作業是否只能在單個節點上處理?Hadoop映射進程

回答

0

直接來自Hadoop權威指南,第6章剖析Map減少作業運行。

「創建任務運行列表中,作業調度器首先檢索 從共享文件系統由客戶端計算的輸入分裂。它 然後爲每個分割創建一個地圖的任務。reduce任務的數量 創建的數據由 作業中的mapred.reduce.tasks屬性確定,該作業由setNumReduceTasks()方法設置,而調度程序 僅創建此數量的要執行的reduce任務,任務給出爲 此處的ID點。」

1

第 基本上,節點的數量將由映射器的數量決定。 1個映射器將在1個節點上運行,N個節點上映射N個映射器,每個映射器有一個節點。 您的工作所需的映射器數量將由Hadoop設置,具體取決於數據量以及您的數據將被拆分的塊的大小。每個數據塊將由1個映射器處理。 因此,例如,如果您有大量的數據,將其分成N個塊,則需要N個映射器來處理它。

+0

正確,但許多映射器可以在同一個節點上運行(可配置的編號) – vefthym