2016-08-14 22 views
5

我的理解是正確的,作業服務器上的數據節點啓動任務(映射器/減速),其中inputsplit存儲並運行在那塊數據和映射存儲的這項任務它在其本地存儲中間輸出?不要映射器存儲它的中間輸出上所運行數據節點的內存?

所以我的問題是:作爲映射器上的數據節點運行,所以它存儲的中間數據的數據節點的內存?而datanode磁盤是hdfs的一部分,而中間輸出不存儲在hdfs上。

回答

5

映射器(中間數據)的輸出存儲在每個映射器數據節點的本地文件系統(不是HDFS)上。這通常是臨時目錄,可以由Hadoop管理員在配置中設置。 Mapper作業完成或數據傳輸到Reducer後,這些中間數據將被清除並且無法訪問。

2

map任務開始其輸出存儲在數據管理部的緩衝。

一旦緩衝器被填充至其容量的80%時,它開始到數據管理部本身(不是HDFS)的磁盤上寫。該盤位置可以根據屬性名稱 -

mapreduce.cluster.local.dir 
觀看/修改在 mapred-site.xml中 Hadoop中2.0
相關問題