Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hadoop要求输入路径位于localhost 9000上_Java_Hadoop - Fatal编程技术网

Java Hadoop要求输入路径位于localhost 9000上

Java Hadoop要求输入路径位于localhost 9000上,java,hadoop,Java,Hadoop,我试图运行Tom Whites的第2章示例 当我运行命令时: hadoop MaxTemperature input/ncdc/sample.txt output 我得到的错误是: 11/12/31 18:08:28 INFO mapred.JobClient: Cleaning up the staging area hdfs://localhost:9000/tmp/hadoop-mymac/mapred/staging/mymac/.staging/job_201112311807_00

我试图运行Tom Whites的第2章示例

当我运行命令时:

hadoop MaxTemperature input/ncdc/sample.txt output
我得到的错误是:

11/12/31 18:08:28 INFO mapred.JobClient: Cleaning up the staging area hdfs://localhost:9000/tmp/hadoop-mymac/mapred/staging/mymac/.staging/job_201112311807_0001
11/12/31 18:08:28 ERROR security.UserGroupInformation: PriviledgedActionException as:mymac (auth:SIMPLE) cause:org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist: hdfs://localhost:9000/user/mymac/input/ncdc/sample.txt
Exception in thread "main" org.apache.hadoop.mapreduce.lib.input.InvalidInputException: Input path does not exist: hdfs://localhost:9000/user/mymac/input/ncdc/sample.txt
我错在哪里了

我没有接触他的源代码,可以在这里找到:


您的
核心站点.xml
hdfs站点.xml
文件配置为使用
本地主机:9000
。如果这不是你期望的(这是我从你的帖子标题中得到的),你期望什么

我们谈论的是什么版本的Hadoop?您是如何安装Hadoop发行版的?从您的另一个问题和配置文件来看,我猜您使用了CHD4。如果你仔细看看,你能看到你是否遗漏了什么吗

在启动Hadoop之前,您是否格式化了HDFS

$ hadoop namenode -format
那么,在启动Hadoop之后,除了信息消息之外,您还会收到其他消息吗

您是否将输入数据复制到HDFS中

$ hadoop dfs -put /tmp/my/input/data input
最后,您从简单的HDFS命令中得到了什么,例如:

$ hadoop dfs -ls /
更新:运行单词计数

  • 启动并运行HDFS。运行
    hadoop dfs-ls/
    应该可以工作
  • 将包含文本文件的文件夹复制到HDFS:
    hadoop dfs-将文本文件放入输入文件夹
  • 运行
    hadoop dfs-ls.
    查看文件是否被正确复制
  • 在您的系统上找到
    hadoop-examples-X.Y.Z.jar
    文件
  • 导航到它所在的任何目录,然后运行:

    $hadoop jar hadoop示例-*.jar字数输入\文件夹输出\文件夹

  • 您应该可以看到MapReduce应用程序的进度

  • 完成后,使用hadoop dfs-cat output\u文件夹/*查看输出

  • 忘记在
    etc/hadoop/hadoop env.sh
    中设置
    JAVA_HOME
    也可能导致此错误

    您可以发布您的
    core site.xml
    mapred site.xml
    hdfs site.xml
    文件吗?默认情况下,它们应该位于
    hadoop-X.Y.Z/conf
    @PhilippeSignoret:当然,我在Github上发布了它们作为要点,这里:至于“hadoop dfs-ls/”:我从localhost/127.0.1 tp localhost获得连接被拒绝的错误:90000否我没有格式化节点?我也应该这么做?不,我也没有将输入数据复制到HDFS中…我们也应该这样做?试试看,让我们知道它是否有效。附录A可以让您更深入地了解配置,但是上面的命令应该可以用于格式化。我建议您从其中一个Hadoop示例开始。我将用一个例子进行编辑。