HDFS:架构设计

写的不到位的地方,欢迎评论指出不足之处
1、HDFS是一个 主从 ( Master / Slaves )架构
  • 主从
    • 两个都是活动状态,并且是互相通信、协作、调用
  • 主备
    • 主是活动的,备是停止的,当主发生异常后,备才会切换开始活动
2、由一个 NameNode 和一些 DataNode 组成
NameNode

完全基于内存存储文件元数据、目录结构、文件 block 的映射

需要持久化方案保证数据可靠性

提供副本放置策略

一个集群由许多台组成,但一个集群只有一个“主”

阿里官方推荐一个集群最大不超过5000台,否则将导致性能下降,管理崩溃的现象

DataNode

基于本地磁盘存储 block (文件的形式)

并保存 block 的校验和数据,保证 block 的可靠性

与 NameNode 保持心跳,汇报 block 列表状态

同时保存两个文件

1、block 文件

2、校验 文件

3、面向文件包含:文件数据(data)和文件元数据(metadata)
  • 文件数据
    • 文件自身数据, 二进制形式的
  • 文件元数据
    • 即文件属性
4、NameNode 负责存储和管理文件元数据,并维护了一个层次型的文件目录树
  • NameNode
    • 负责管理,文件自身数据以外,无关的数据 
    • 文件名是什么、文件大小情况、文件切割情况、切割后所在位置、文件修改时间等,起到记账的作用
5、DataNode 负责存储文件数据(block块),并提供 block 的读写
  • NameNode 短暂的处理,分配到某一个 DataNode,之后再由这个 DataNode 进行相关读写
6、DataNode 与 NameNode 维持心跳,并汇报自己持有的 block 信息
  • 虽然 NameNode 会指派 DataNode 进行处理,但 NameNode 不会先记录
  • 而是 DataNode 处理后向 NameNode 汇报情况,从而维持两者的联系 
7、Client 和 NameNode 交互文件元数据和 DataNode 交互文件 block 数据
  • 客户端要向两者分开交互不同的内容,即原始数据(客户端),没有客户端也就没有数据来源

HDFS 结构图
Block备份
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

家道消乏

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

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

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

打赏作者

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

抵扣说明:

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

余额充值