我试图在cloudera hadoop上执行下面的命令,但是它遇到了问题,我得到了错误消息。
不知道是虫子还是我做错了什么。
如有任何信息,将不胜感激。
hadoop jar /usr/lib/hadoop-mapreduce/hadoop-streaming.jar -files /home/cloudera/mapper.py /home/cloudera/reducer.py -mapper "python mapper.py" -reducer "python reducer.py" -input /user/cloudera/test_file -output /user/cloudera/wc_output01
错误消息:
在命令行[/home/cloudera/reducer.py]中发现1个意外参数
尝试-帮助获取更多信息流命令失败!
2条答案
按热度按时间f2uvfpb91#
解决了问题。我用了-个文件来制造问题。早些时候,我使用了-file,但控制台给出了警告“弃用,使用-files作为通用选项”。但这并没有解决这个问题,所以我恢复了返回文件选项,它运行时给出了相同的警告。
az31mfrm2#
您可以通过阅读文档来了解错误
-files和-archives选项是通用选项。请确保将常规选项放在命令选项之前,否则命令将失败。
你正确地提出了论点,所以这不是问题所在
可以这样指定多个条目:
-files hdfs://host:fs_port/user/testfile1.txt,hdfs://host:fs_port/user/testfile2.txt
Map器和还原器文件之间没有逗号你可以过去
mapper.py
如果文件是可执行的并且以#!/usr/bin/env python