我正在使用Hadoop 1.0.4的「新」API(包org.apache.hadoop.mapreduce中的類)。當我想鏈接mapper/reducer時,我發現ChainMapper,ChainReducer是爲「舊」API(包org.apache.hadoop.mapred中的類)編寫的。我該怎麼辦?如何在Hadoop 1.0.4中鏈接mapper/reducer?
2
A
回答
5
我也在尋找相同的東西。我確實得到了答案,儘管晚了,我還是認爲分享這可能會幫助某人。
從Hadoop的2.0起,你可以找到ChainMapper和ChainReducer在包org.apache.hadoop.mapreduce.lib.chain
ChainMapper使用模式:...
Job job = new Job(conf, "MyJob");
Configuration map1Conf = new Configuration(false);
... ChainMapper.addMapper(job, AMap.class, LongWritable.class, Text.class, Text.class, Text.class, true, map1Conf);
Configuration map2Conf = new Configuration(false);
... ChainMapper.addMapper(job, BMap.class, Text.class, Text.class, LongWritable.class, Text.class, false, map2Conf);
Configuration map3Conf = new Configuration(false);
... ChainReducer.setReducer(job, CReducer.class, Text.class, Text.class, LongWritable.class, Text.class, false, map3Conf);
...
job.waitForComplettion(true);
...
0
請閱讀這個post。這顯示瞭如何使用兩個JobConf來啓用Map Reduce Jobs的鏈接,而不是使用ChainMapper/ChainReducer。
相關問題
- 1. Cloudera Hadoop沒有運行hadoop 1.0.4?
- 2. Sqoop的哪個版本支持Hadoop 1.0.4?
- 3. Hadoop 1.0.4分佈式緩存錯誤
- 4. hadoop 1.0.4單個羣集已過時?
- 5. 如何在hadoop-1.0.4中禁用作業設置和作業清理任務
- 6. Hadoop:在0.20.203鏈接工作
- 7. 如何將Weka與Hadoop鏈接?
- 8. 在Hadoop中鏈接多個MapReduce作業
- 9. 在hadoop中鏈接mapreduce工作
- 10. 鏈接Hadoop MapReduce 1.1.1示例
- 11. Hadoop地圖/減少鏈接
- 12. 如何在Hadoop中
- 13. 如何在Hadoop中
- 14. 如何在Python中鏈接
- 15. 如何修復在旅途中破碎的設計路由1.0.4
- 16. 瀏覽文件系統鏈接 - hadoop - localhost鏈接
- 17. iText 5.5.0與XDocReport 1.0.4
- 18. Hadoop Pipes的鏈接器錯誤
- 19. 在Hadoop Map中共享數據Reduce鏈接
- 20. 在Hadoop流中鏈接多個mapreduce任務
- 21. 我如何在Hadoop中
- 22. hadoop鏈圖/ reduce
- 23. iOS深度鏈接和通用鏈接,如何在ios中深入鏈接
- 24. 如何在mailto鏈接中編碼空白鏈接以創建超鏈接
- 25. 如何在DIV中集中超鏈接?
- 26. 如何在RSS源中顯示文章鏈接和子鏈接?
- 27. 如何在PHP中創建鏈接以外的其他鏈接?
- 28. 如何在超鏈接中超鏈接條形圖
- 29. 如何在HTML鏈接中建立鏈接
- 30. 如何在PHP中使用郵件clickabe鏈接(HREF鏈接)
但addDependingJob只是保證一個被執行之後又一次使用ChainReducer將一個輸出直接傳遞到另一個輸入,以減少磁盤使用量。 –