当前位置:   article > 正文

hdfs文件系统和linux文件系统,HDFS文件系统结构解析

hdfs与linux的区别

NameNode节点是就是HDFS的大脑。想了解HDFS文件系统,必须了解大脑结构。 咱们就从NameNode节点开始。NameNode类中,关于HDFS文件系统的存储和管理都交给了FSNamesystem负责。下面介绍一下FSNamesystem的逻辑组成和类图。

1.

FSNameSystem层次结构

一些概念

INode:  它用来存放文件及目录的基本信息:名称,父节点、修改时间,访问时间以及UGI信息等。

INodeFile: 继承自INode,除INode信息外,还有组成这个文件的Blocks列表,重复因子,Block大小

INodeDirectory:继承自INode,此外还有一个INode列表来组成文件或目录树结构

Block(BlockInfo):组成文件的物理存储,有BlockId,size ,以及时间戳

BlocksMap: 保存数据块到INode和DataNode的映射关系

FSDirectory:保存文件树结构,HDFS整个文件系统是通过FSDirectory来管理

FSImage:保存的是文件系统的目录树

FSEditlog:  文件树上的操作日志

FSNamesystem: HDFS文件系统管理

这些概念之间的层次关系:

3f547d6741489ee72b0af1e6a7459063.png

我们都知道,在NameNode内存中存在两张很重要的映射表:

1. 文件系统的命名空间(文件目录树) 主要是 文件和Block映射关系 (保存在FSDirectory)

2. Block 和 INodeFile & DataNode的映射关系 (保存在FSNamesystem)

在上图中,左边黑线部分是1 数据结构的层次关系;红线部分是 2 关系的层次结构

(其中block & DataNode这个共用)0b1331709591d260c1c78e86d0c51c18.png

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/613229
推荐阅读
相关标签
  

闽ICP备14008679号