HDFS集群中NameNode是如何管理元数据的

NameNode如何管理元数据:

概述:

1.NameNode通过一些edits(小) 和 fsimage(大)两类文件来管理元数据的

2.edits文件相对较小,操作时相对较快,记录HDFS集群最近一段状态的元数据 阀值:1小时 100w (阀值满会将元数据写入到fsimage文件中形成新的fsimage文件)

3.simage文件相对较大,操作时相对较慢,存储HDFS集群最近状态以外,其他所有的元数据信息(要不断的和edits文件合并,从而形成新的edits文件)

细节:fsimage文件的合并是由SecondaryNameNode实现的,整个过程NameNode不参与

4.开启HDFS集群时,会自动加载fsimage文件 和 最新的edits文件进内存,用于记录元数据,整个过程相当于HDFS的自检,次状态下,HDFS集群会强制进入安全模式,只能读,不能写

流程图:

SecondaryNameNode是如何辅助NameNode管理元数据的:

概述:

1.SecondaryNameNode会间隔60秒,询问一下NameNode edits文件是否满足阀值(1小时,100w次)

2.当满足阀值时,会通知NameNode创建新的edits文件,继续往里面写入元数据

3.根据http协议,从NameNode上把要合并的edits文件和fsimage文件 ,拉入到本地合并

4.将合并后的fsimage文件推送给NameNode,用来替换旧的fsimage文件,旧的fsimage文件不会被立刻删除,当达到一定的阀值时才会被删除

5.对于edits文件和fsimage文件的合并操作,SecondaryNameNode独立完成

6.SecondaryNameNode和NameNode 不会被部署到同一台服务器上,配置几乎一样,SecondaryNameNode的内存稍微大一些

7.紧急情况下:SecondaryNameNode可以恢复NameNode的元数据

流程图:

l

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值