2017-03-14 26 views

回答

1

Hadoop接受Streaming命令選項-outputformat
要將輸出文件生成爲序列文件,請使用-outputformat SequenceFileOutputFormat

例如:

$HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/hadoop-streaming.jar \ 
    -input myInputDirs \ 
    -output myOutputDir \ 
    -outputformat org.apache.hadoop.mapred.SequenceFileOutputFormat\ 
    -mapper MapperClass \ 
    -reducer ReducerClass 

默認情況下,-inputformat-outputformat被設置爲分別TextInputFormatTextOutputFormat

+0

非常感謝。這對我有用。 我只是很想知道,這是否可能在Python代碼中。通過導入hadoop庫。 –

+0

是的,如果你使用mrjob模塊編寫MapReduce。檢查此鏈接[這裏](https://pythonhosted.org/mrjob/guides/writing-mrjobs.html#input-and-output-formats) – franklinsijo

+0

可悲的是,這是行不通的。 在java中, job.setOutputFormatClass(SequenceFileOutputFormat.class); 工作正常,但是當我在終端中使用它時,它顯示類沒有找到。 :( –