我不知道这里发生了什么,但我正在尝试将一个简单的文件从本地文件系统的目录复制到为hdfs指定的目录。
在my hdfs-site.xml中,我使用以下属性指定hdfs的目录为/home/vaibhav/hadoop/datanodehadoopdata-
<name>dfs.data.dir</name>
<value>/home/vaibhav/Hadoop/dataNodeHadoopData/</value>
and
<name>dfs.name.dir</name>
<value>/home/vaibhav/Hadoop/dataNodeHadoopData/</value>
我正在使用以下命令-
bin/hadoop dfs -copyFromLocal /home/vaibhav/ml-100k/u.data /home/vaibhav/Hadoop/dataNodeHadoopData
将文件u.data从其本地文件系统位置复制到我指定为hdfs目录的目录。但当我这么做的时候,什么都不会发生-没有错误,什么都不会。而且没有文件被复制到hdsf。我做错什么了吗?有没有权限问题?
需要建议。
我使用的是伪分布式单节点模式。
另外,我还想问一下,在map reduce程序中,我已经将配置设置为指向inputfilepath as/home/vaibhav/ml-100k/u.data。所以它不会自动将文件从给定位置复制到hdfs吗?
1条答案
按热度按时间a9wyjsp71#
我相信
dfs.data.dir
以及dfs.name.dir
必须指向两个不同的现有目录。此外,在更改配置中的目录后,请确保已格式化namenode fs。在复制到hdfs时,您错误地指定了目标。将本地文件复制到hdfs的正确语法是:
例子:
这将创建一个文件
my.data
在hdfs的用户主目录中。在将文件复制到hdfs之前,请确保您首先掌握了列出目录内容和目录创建。