我的reducer類使用TextOutputFormat(Job給出的默認OutputFormat)生成輸出。在MapReduce作業完成後,我喜歡使用此輸出來聚合輸出。除此之外,我喜歡用TextInputFormat寫出彙總信息,以便此進程的輸出可以在下一次MapReduce任務迭代中消耗。任何人都可以給我一個例子如何寫&與TextFormat閱讀?順便說一下,我使用TextFormat而不是Sequence的原因是互操作性。輸出應由任何軟件消耗。Hadoop 0.2:如何從TextOutputFormat讀取輸出?
3
A
回答
5
不排除序列文件;他們使連接MapReduce作業變得快速和容易,並且如果您需要它們以用於其他事情,您可以使用「hadoop fs -text 文件名」以文本格式輸出它們。
但是,回到原來的問題:要使用TextInputFormat,將其設置爲作業中的輸入格式,然後使用TextInputFormat.setInputPaths
指定它應該用作輸入的文件。你的映射器的關鍵應該是一個LongWritable,並且它的值是一個Text。
對於使用TextOutputFormat作爲輸出,將其設置爲作業中的輸出格式,然後使用TextOuputFormat.setOutputPath
指定輸出路徑。您的縮減器(或映射器,如果它是僅限地圖的作業)需要使用NullWritable
作爲輸出鍵的類型,以便每行僅獲取一個值的文本表示形式,否則每行都將是鍵和由選項卡分隔的值(默認情況下,您可以通過將「mapred.textoutputformat.separator
」設置爲不同的分隔符來更改此值)。
相關問題
- 1. 嘗試從Hdfs輸出讀取hadoop
- 2. Hadoop TextOutputFormat:將標題添加到CSV輸出
- 3. Hadoop的MultipleOutputFormats到HFileOutputFormat和TextOutputFormat
- 4. 如何從hadoop獲取輸出數據?
- 5. 如何閱讀`Hadoop的dfsadmin -report`輸出
- 6. hadoop如何讀取輸入文件?
- 7. 從標準輸入流中讀取Hadoop
- 8. 如何從java讀取腳本輸出?
- 9. 如何從ostream讀取輸出?
- 10. Python如何從pexpect子讀取輸出?
- 11. 如何從過程輸出讀取
- 12. 如何讀取Hadoop Sequentil文件作爲Hadoop作業的輸入?
- 13. 從進程讀取輸出
- 14. 從servlet讀取jar輸出
- 15. 從pexpect sendline讀取輸出
- 16. 如何從流式Hadoop作業獲取壓縮(文本)輸出
- 17. 從cmd讀取輸出獲取錯誤
- 18. Hadoop讀取輸入分裂多次
- 19. hadoop mongodb連接器讀取數據,但輸出爲mysql數據
- 20. 以編程方式讀取Hadoop Mapreduce程序的輸出
- 21. Java:讀取hadoop減速器的輸出文件
- 22. Hadoop WordCount輸出
- 23. 如何讀取gcc的輸出-v
- 24. 如何讀取Xcode控制檯輸出?
- 25. Java verbose:gc如何讀取輸出?
- 26. 如何讀取Spark SQL的toDebugString輸出?
- 27. 如何逐行讀取標準輸出?
- 28. Servlets-如何讀取servlet輸出(out.println)
- 29. 如何讀取文件的hexdump輸出?
- 30. 如何讀取SNMP OID輸出