Hadoop ConnectException

时间:2013-09-15 06:44:15

标签: exception hadoop connection

我最近在我当地的ubuntu上安装了hadoop。我已经通过调用bin/start-all.sh脚本启动了数据节点。但是,当我尝试运行单词计数程序

bin/hadoop jar hadoop-examples-1.2.1.jar wordcount /home/USER/Desktop/books /home/USER/Desktop/books-output

我总是得到一个连接异常。 “books”文件夹位于我的桌面(本地文件系统)上。关于如何克服这个问题的任何建议?

我已按照this教程中的每个步骤进行操作。我不知道如何摆脱这个错误。所有帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

将您的图书文件复制到您的hdfs

并且对于输入路径参数,请使用复制的书籍文件的hdfs路径。

了解更多详情,请参阅以下链接。

http://cs.smith.edu/dftwiki/index.php/Hadoop_Tutorial_1_--_Running_WordCount#Basic_Hadoop_Admin_Commands

答案 1 :(得分:0)

这里有一点混乱,当你运行hadoop ...命令时,它使用的默认文件系统是 hadoop分布式文件系统因此文件必须位于hdfs上hadoop访问它。

要将文件从本地文件系统复制到hadoop文件系统,您必须使用以下命令

hdfs dfs -copyFromLocal /path/in/local/file/system /destination/on/hdfs

如果您想直接从 IDE 运行程序,还有一件事情,那么有时您会遇到这个问题,可以通过添加

来解决 conf变量中的

core-site.xml and hdfs-site.xml个文件类似于

conf.addResource(new Path("/usr/local/hadoop/etc/hadoop/core-site.xml"));   conf.addResource(new Path("/usr/local/hadoop/etc/hadoop/hdfs-site.xml"));

将上面的路径更改为hdfs-site.xml,将core-site.xml更改为本地路径。

因此,也可以通过命令行将上述参数添加到带有-cp标记的classPath中。