2012-01-20 61 views
2

我正在将大量数据存储到hdfs中。我需要将文件从一个文件夹移动到另一个文件夹。关于hadoop hdfs文件系统重命名

我可以问一般文件系统重命名方法的成本是多少?假设我必须移动千兆字节的数据。

非常感谢。

回答

3

如果实施正确,在HDFS或任何文件系统中移动文件涉及对名称空间的更改并且不移动实际数据。遍历代码只会改变名称节点中的名称空间(内存和编辑日志)。

NameNode.java

  • 名称节点控制两个关键表:
  • 1)filename-> blocksequence(命名空间)
  • 2)嵌段 - > machinelist( “索引节点”)

只有第一部分需要修改,块到机器列表不一定是。我没有尝试过,但我想它应该没问题。

3

Rename是HDFS中的元数据操作。因此,它在普通的POSIX文件系统中也是非常便宜的。没有数据被移动。唯一涉及的服务器是namenode。

重命名的源代码可以找到here。非常直截了当。

相关问题