2013-06-12 71 views
1

在我的兩個datanode設置中,我正在運行TestDFSIO基準測試並觀察在運行基準測試的最後階段塊會被刪除。Hadoop:在運行HDFS基準測試後,塊如何被刪除?

這似乎是在基準測試結束時執行的清理過程的一部分。日誌證實這與以下行:

hadoop.mapred.JobTracker: Adding task (JOB_CLEANUP) ... 

如何添加JOB_CLEANUP任務實際上相關塊/文件被刪除?

我知道TestDFSIO.java有清理方法,但在完成基準執行時,我無法看到它們如何/如何/何時被調用。

回答

0

映射器類(由Hadoop框架提供)的run()方法調用清理方法:

public void run(Context context) throws IOException, InterruptedException { 
    setup(context); 
    while (context.nextKeyValue()) { 
    map(context.getCurrentKey(), context.getCurrentValue(), context); 
    } 
    cleanup(context); 
}