要求澄清HDFS的一些概念

  • 本文关键字:HDFS hadoop mapreduce hdfs
  • 更新时间 :
  • 英文 :


我不确定这个问题是否属于这里。如果没有,我道歉。我正在阅读HDFS的论文,发现很难理解一些术语。请在下面找到我的问题。

1) 根据论文,"HDFS命名空间是文件和目录的层次结构。文件和目录在NameNode上由inode表示,inode记录权限、修改和访问时间、命名空间和磁盘空间配额等属性。"名称空间信息在inode中究竟意味着什么。它是指文件的完整路径吗?因为,前面的声明说"HDFS命名空间是文件和目录的层次结构"。

2) 根据论文"NameNode维护命名空间树和文件块到DataNodes的映射(文件数据的物理位置)。"命名空间树和命名空间都一样吗?请参阅关于命名空间定义的第1点。命名空间树信息是如何存储的?它是作为索引节点的一部分存储的吗?每个索引节点也有一个父索引节点指针?

3) 根据论文,"HDFS将整个命名空间保存在RAM中。索引节点数据和属于每个文件的块列表包括名为映像的名称系统的元数据。"映像是否也包含命名空间?

4) 名称空间id的用途是什么?它是否用于区分两个不同的文件系统实例?

谢谢,

Venkat

名称空间信息在inode中究竟意味着什么。它是指文件的完整路径吗?因为,前面的声明说"HDFS命名空间是文件和目录的层次结构

这意味着你可以像在系统上一样浏览文件(通过hadoop dfs -ls等命令),你会看到这样的结果:/user/hadoop/myFile.txt,但从物理上讲,这个文件根据你的复制因子分布在集群上的几个块中

名称空间树和名称空间是相同的吗?请参阅关于命名空间定义的第1点。命名空间树信息是如何存储的?它是否作为索引节点的一部分存储,其中每个索引节点也将有一个父索引节点指针?

使用hadoop dfs -copyFrom local myfile.txt /user/hadoop/myfile.txt等命令在HDFS上复制文件时,会根据dfs.block.size值(默认值为64MB)对文件进行拆分。然后将块分布在数据节点(用于存储的节点)上。namenode保留所有块的映射,以便在启动时(或使用hadoop fsck /等命令)验证数据的完整性。

图像是否也包含名称空间?

对于这个,我不确定,但我认为名称空间也在RAM中。

名称空间id的用途是什么?它是否用于区分两个不同的文件系统实例?

是的,名称空间id只是一个id,它确保了数据节点数据的一致性。

我希望这对你有所帮助,即使这还远远不是一个详尽的解释。

相关内容

  • 没有找到相关文章

最新更新