./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount /data/wordcount /output/wordcount运行不出来怎么办
时间: 2023-10-05 08:13:24 浏览: 126
如果您无法运行上述命令,可能存在以下原因:
1. 您的 Hadoop 安装可能存在问题。请确保正确安装了 Hadoop,并且将它添加到了系统 PATH 中。
2. 输入命令时,路径或文件名可能写错了。请注意检查命令行中的路径和文件名是否正确,以及他们是否存在。
3. 输入的输入和输出路径可能不存在或者没有访问权限。请确保输入和输出路径都存在并且您具有适当的访问权限。
4. 您的 Hadoop 集群可能无法正常工作,请检查集群的状态是否正常。
如果您仍然无法运行命令,请尝试检查上述原因并修改。如果问题仍然存在,请考虑寻求其他的帮助或支持。
相关问题
hadoop jar /usr/local/src/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount ~/input/data.txt ~/output
好的,Hadoop的命令行工具`hadoop jar`用于执行Hadoop MapReduce任务。在这个例子中:
```sh
hadoop jar /usr/local/src/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount ~/input/data.txt ~/output
```
这个命令的意思是:
1. `/usr/local/src/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar` 是指定的主类路径,即MapReduce示例程序的JAR文件,通常包含wordcount等预打包的MapReduce任务。
2. `wordcount` 是要执行的具体MapReduce任务名,这里是Hadoop自带的一个经典示例,用于计算文本文件中单词的频率。
3. `~/input/data.txt` 是输入数据文件,这是wordcount任务需要读取的数据源,`~` 表示用户的家目录。
4. `~/output` 是输出结果会保存的目录,MapReduce任务完成后,单词及其计数的结果会被写入这里。
运行这个命令,Hadoop会在后台启动一个JobTracker(在Hadoop 2.x之后改名为YARN Resource Manager)来调度和管理MapReduce作业,并从给定的输入文件生成统计结果,存储在指定的输出目录下。
hadoop jar ~/hadoop2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar wordcount hdfs://10.0.2.15:9000/words.txt hdfs://10.0.2.15:9000/out JAR does not exist or is not a normal file: /home/datasci/hadoop2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar
这个错误提示表明指定的 JAR 文件不存在或者不是一个普通文件。请确认 JAR 文件路径是否正确,并且确保该文件存在。你可以使用 `ls` 命令查看该文件是否存在,如下所示:
```
ls ~/hadoop2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar
```
如果该文件存在,则可能是文件权限或者文件类型不正确导致的问题。你可以使用 `chmod` 命令修改文件权限,例如:
```
chmod +x ~/hadoop2/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.10.0.jar
```
或者你可以尝试重新下载该 JAR 文件,并确保文件类型正确。如果问题仍然存在,请提供更多详细信息以便我能够更好地帮助你。
阅读全文