网站链接: element-ui dtcms
当前位置: 首页 > 技术博文  > 技术博文

HDFS:架构设计

2021/6/27 14:54:26 人评论

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

写的不到位的地方,欢迎评论指出不足之处
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备份

相关资讯

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?