Hadoop的输入和输出如何工作?

时间:2014-01-27 00:07:59

标签: java hadoop bigdata

我只是使用本教程在本地计算机上设置我的单节点Hadoop集群 -

http://ac31004.blogspot.com/2013/10/installing-hadoop-2-on-mac_29.html

在本教程中,我遵循以下说明: 尝试一下 hadoop fs -ls

如果你得到

ls:`。':没有这样的文件或目录

然后hadoop文件系统中没有主目录。所以

hadoop fs -mkdir /user
hadoop fs -mkdir /user/<username>

您登录计算机的名称在哪里。

现在更改为$ HADOOP_INSTALL目录并上传文件

hadoop fs -put LICENSE.txt 

当我使用以下命令时:

hadoop jar ./hadoop-mapreduce-examples-2.2.0 wordcount LICENSE.txt out 

虽然有效,但我无法找到输出文件夹。所以要调试我试图使用另一个输出文件夹并使用:

hadoop jar ./hadoop-mapreduce-examples-2.2.0 wordcount LICENSE.txt  /Applications/hadoop-2.2.0/out2

这很好用,但问题是我没有看到应用程序文件夹中的目录out2。

然后我在/Applications/hadoop-2.2.0中创建了一个目录'in'并将README.txt放入其中并尝试使用以下命令:

hadoop jar ./hadoop-mapreduce-examples-2.2.0.jar wordcount /Applications/hadoop-2.2.0/in/README.txt  /Applications/hadoop-2.2.0/out3

现在我收到了一个错误:

  

错误security.UserGroupInformation:PriviledgedActionException as:chinmay(auth:SIMPLE)cause:org.apache.hadoop.mapreduce.lib.input.InvalidInputException:输入路径不存在:hdfs:// localhost:9000 / Applications / hadoop -2.2.0 /英寸/ README.txt中

1 个答案:

答案 0 :(得分:2)

输入和输出文件夹也在HDFS上。在那里创建它们,而不是在本地文件系统上创建它们。