无法运行hadoop流媒体作业:缺少必需的选项:输入,输出

时间:2014-01-15 07:55:01

标签: hadoop cassandra streaming datastax

我正在尝试在DSE 3.1分析服务器群集上运行流媒体作业。我正在使用Cassandra CFs进行输入。但它抱怨输入和输出参数,但它们已经设置(我只是因为抱怨而设置它):

dse hadoop jar $HADOOP_HOME/lib/hadoop-streaming-1.0.4.8.jar \
-D cassandra.input.keyspace="tmp_ks" \
-D cassandra.input.partitioner.class="MurMur3Partitioner" \
-D cassandra.input.columnfamily="tmp_cf" \
-D cassandra.consistencylevel.read="ONE" \
-D cassandra.input.widerows=true \
-D cassandra.input.thrift.address=10.0.0.1
-inputformat org.apache.cassandra.hadoop.ColumnFamilyInputFormat \
-outputformat org.apache.hadoop.mapred.lib.NullOutputFormat \
-input /tmp_ks/tmp_cf \
-output /dev/null \
-mapper mymapper.py \
-reducer myreducer.py

得到了“ERROR streaming.StreamJob:缺少必需的选项:输入,输出”。我尝试了不同的输入和输出,不同的输出格式,但得到了相同的错误。

我做错了什么?

3 个答案:

答案 0 :(得分:2)

我注意到你的命令的这一部分没有反斜杠:

...
-D cassandra.input.thrift.address=10.0.0.1
...

也许这会搞砸下面的界限?

答案 1 :(得分:1)

输入应该是HDFS上的现有路径,而输出应该是HDFS上不存在的路径

答案 2 :(得分:0)

我也发现你的命令错了:

...    
-D cassandra.input.partitioner.class="MurMur3Partitioner" \
...

课程应该是" Murmur3Partitioner"