HDFS的联邦机制

HDFS的联邦机制

1.HDFS1.X架构
 HDFS1.X架构从逻辑上可以分为两层:命名空间管理层和数据块存储管理层。其中数据块存储管理层又分为数据块管理和存储管理两部分。
 Namenode实现了命名空间管理层以及数据块存储管理层中的数据块管理功能,而Datanode则实现了数据块存储管理层中的存储管理部分。
 HDFS1.X架构使用一个Namenode来管理文件系统的命名空间以及数据块信息,使得HDFS的实现非常简单,但是单一的Namenode会导致以下缺点:
 (1)由于Namenode在内存中保存整个文件系统的元数据,所以Namenode内存的大小直接限制了文件系统的大小。
 (2)由于HDFS文件的读写流程都涉及与Namenode交互,所以文件系统的吞吐量受限于单个Namenode的处理能力。
 (3)Namenode作为文件系统的中心节点,无法做到数据的有效隔离。
 (4)Namenode是集群中的单一故障点,有可用性隐患。
 (5)Namenode实现了数据块管理以及命名空间管理功能,造成这两个功能高度耦合,难以让其他服务单独使用数据块存储功能。

2.HDFS联邦机制
 为了能够水平扩展Namenode,HDFS2.X提供了Federation架构。Federation架构的HDFS集群可以定义多个Namenode/Namespace,这些Namenode之间相互独立,各自分工管理自己的命名空间。HDFS集群中的Datanode提供数据块的共享存储功能,每个Datanode都会向集群中所有的Namenode注册,且周期性地向所有的Namenode发送心跳和块汇报,然后执行Namenode通过响应发回的Namenode指令。
 HDFS Federation引入了两个新概念:
 (1)块池
 一个块池由属于同一个命名空间的所有数据块组成,这个块池中的数据块可以存储在集群中的所有Datanode上,而每个Datanode都可以存储集群中所有块池的数据块。每个块池独立管理,不与其他块池交互,所以一个Namenode出现故障时,并不会影响集群中的Datanode服务于其他的Namenode。
 (2)命名空间卷
 一个Namenode管理的命名空间以及它对应的块池一起被称为命名空间卷,当一个Namenode/Namespace被删除后,它对应的块池也会从集群的Datanode上删除。

 HDFS Federation架构相较于HDFS 1.X架构有这样的优点:支持Namenode/Namespace的水平扩展性,同时为应用程序和用户提供了命名空间卷级别的隔离性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

loser与你

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值