目录
一、当前HDFS的概况
1、当前HDFS的架构
当前HDFS包含两层结构:
(1) Namespace 管理目录,文件和数据块
:
它支持常见的文件系统操作,如创建文件,修改文件,删除文件等。
(2)Block Storage有两部分组成:
Block Management
维护集群中datanode的基本关系,它支持数据块相关的操作,如:创建数据块,删除数据块等,同时,它也会管理副本的复制和存放。
Physical Storage
存储实际的数据块并提供针对数据块的读写服务。
Block Storage的这两部分分别在namenode和datanode上实现,所以
该模块由namenode和datanode分工完成
。
当前HDFS架构只允许整个集群中存在一个namespace,而该namespace被仅有的一个namenode管理。这个架构使得HDFS非常容易实现,但是,它(见上图)在具体实现过程中会出现一些模糊点,进而导致了很多局限性(下面将要详细说明),当然这些局限性只有在拥有大集群的公司,像baidu,腾讯等出现。
2、NameNode 架构的局限性
(1)Namespace(命名空间)的限制
由于 NameNode 在内存中存储所有的元数据(metadata)
,因此单个 NameNode 所能存储的对象(文件+块)