实际上,我的意图是将hadoop作业的输出重命名为.csv
文件,因为我需要在rapidminer中可视化此csv数据。
在如何以csv格式输出hadoop结果中,据说,为此目的,我需要遵循以下三个步骤:
1. Submit the MapReduce Job
2. Which will extract the output from HDFS using shell commands
3. Merge them together, rename as ".csv" and place in a directory where the visualization tool can access the final file
如果是,我该如何做到这一点?
更新myjob.sh
:
bin/hadoop jar /var/root/ALA/ala_jar/clsperformance.jar ala.clsperf.ClsPerf /user/root/ala_xmlrpt/Amrita Vidyalayam, Karwar_Class 1 B_ENG.xml /user/root/ala_xmlrpt-outputshell4
bin/hadoop fs -get /user/root/ala_xmlrpt-outputshell4/part-r-00000 /Users/jobsubmit
cat /Users/jobsubmit/part-r-00000 /Users/jobsubmit/output.csv
显示:The CSV file was empty and couldn’t be imported.
当我试图打开output.csv
时。
cat /Users/jobsubmit/part-r-00000> /Users/jobsubmit/output.csv
首先需要从HDFS中检索MapReduce结果
hadoop dfs -copyToLocal path_to_result/part-r-* local_path
然后将它们放入一个文件
cat local_path/part-r-* > result.csv
然后这取决于你的MapReduce结果格式,如果它已经是一个csv格式,那么它就完成了。如果没有,可能必须使用sed或awk等其他工具将其转换为csv格式。