hadoop的SecondaryNameNode

大部分内容转自:https://blog.csdn.net/qq_44065303/article/details/102924827

  • 背景:辅助NameNode管理元数据,从可用性的角度出发,不会跟nameNode部署在同一服务器
  • 执行过程:从NameNode上下载元数据信息(fsimage,edits),然后把二者合并,生成新的fsimage,在本地保存,并将其推送到NameNode,替换旧的fsimage.
  • 作用:

         1.减小edits日志大小,加快集群二次启动速度

         2.备份FSimage和edits,防止数据丢失

 

具体的执行过程

1、 namenode通知secondaryNameNode进行合并操作

2、secondaryNameNode收到namenode的请求后(通过http方式)下载namenode中的FSImage和editlog到secondaryNameNode节点的机器中;

3、namenode收到secondaryNameNode的下载请求,会再创建一个新的edits log ,此时客户端的操作日志都会写入这个新的edits log中,然后把旧的edits log和原本的fsimage给secondaryNameNode;

4、secondaryNameNode收到edits log与fsimage后,将fsimage载入内存,会按照edits log里边记录的日志操作,一步一步执行里边的操作,把数据更新到fsimage文件中,等edits log里的所有操作都执行完了,此时的fsimage文件已经是最新的了,然后把新的fsimage返回给namenode;

在secondaryNameNode处理过程中,如果客户端进行了增删改操作,这些新的操作就会写入第3步中创建的新的edits log 中,不会修改已经被传到secondaryNameNode的旧的edits log。(这样可以保证在这个时候namenode宕机可以通过旧的fsimage+旧的editslog+新的edits log恢复元数据。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值