在hdfs文件系统中创建文件的标准方法是什么?

时间:2015-04-07 15:19:34

标签: hadoop hdfs

我了解到我必须在hdfs-site.xml中配置NameNode和DataNode目录。这就是我在NameNode上的hdfs-site.xml配置:

<configuration>
 <property>
    <name>dfs.replication</name> 
    <value>3</value>
  </property>

 <property>
    <name>dfs.namenode.name.dir</name> 
    <value>file://usr/local/hadoop-2.6.0/hadoop_data/hdfs/namenode</value>
  </property>

 <property>
    <name>dfs.block.size</name> 
    <value>134217728</value>
  </property>
</configuration>

我在我的DataNode上做了几乎相同的操作,并将 dfs.namenode 更改为 dfs.datanode

然后我通过

格式化文件系统
hadoop namenode -format

似乎没有错误就完成了所有事情。 然后我想使用:

在我的HDFS文件系统中创建一个目录
hdfs dfs -mkdir test

我收到了一个错误:

mkdir: `test': No such file or directory

我错过了什么或从格式化到使用HDFS创建文件/目录的常见过程是什么?

4 个答案:

答案 0 :(得分:3)

嗯,这很容易。

hdfs dfs -mkdir /test

已成功创建。

hdfs dfs -put myFile /test/myFile

也可以。

答案 1 :(得分:2)

HDFS是不符合POSIX的文件系统,因此您不能直接在HDFS内部编辑文件,但是可以使用以下命令将文件从本地系统复制到HDFS:

hdfs dfs -put / path / in / source / system / filename / path / in / HDFS / system / destination

答案 2 :(得分:0)

创建目录:

hdfs dfs -mkdir directoryName

在目录

中创建一个新文件
hdfs dfs -touchz directoryName/Newfilename

在HDFS中写入新创建的文件

nano filename

保存 Cntr + X Y

从HDFS读取新创建的文件

nano fileName

hdfs dfs -cat directoryName/fileName

答案 3 :(得分:0)

如果要创建多个子目录,则还应该使用-p标志:

hdfs dfs -mkdir -p /test/another_test/one_more_test