NameNode管理元数据的机制

NameNode的职责:负责客户端请求的响应和元数据的管理(查询、修改)。这篇博客主要说说NameNode元数据的管理。

元数据的存储机制

  1. 内存保存一份
  2. 操作日志文件
  3. image镜像文件

更新流程

  1. 在内存中更新
  2. 记录操作日志
  3. 定期把操作日志和映像(fsimage)进行合并(check point),这项任务非常繁重,交给secondary namenode来做。

check point流程

check point的触发条件:按照时间或者按照日志中的操作条数。

  1. secondary namenode经常发送请求查询namenode是否满足check
  2. 如果条件满足,secondary node 请求进行check point。
  3. namenode滚动当前正在写的edits,将刚刚滚动掉的和之前的edits文件一起进行合并。
  4. secondary namenode下载edits文件,然后把这些edits文件和fsimage文件在内存中进行合并,然后写入到硬盘。
  5. 上传新的fsimage到NameNode。
  6. NameNode把旧的fsimage用新的覆盖掉。

Secondary NameNode的作用

元数据的一个备份。如果NameNode的工作目录掉了,可以把Secondary NameNode的工作目录拷贝回去,可以恢复绝大部分数据。

想要完全恢复可以让NameNode的工作目录配置在多个磁盘(文件夹)上。

hdfs-site.xml

<property>
    <name>dfs.name.dir</name>
    <value>/disk1/name1,/disk2/name2</value>
</property>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值