当NameNode收到更新元数据请求

首先更新内存中元数据信息

记录操作日志 edits

定期合并(checkpoint) edits 到 fileimage

checkpoint 触发条件: 定时 ; 按照edits中记录数量 ;

触发条件达成 NameNode 请求 secondary namenode

NameNode 将edits正在写入的切断并滚动生成

secondary namenode 将fsimage和edits下载到本地,并在内存中合并,然后存放到本地,再请求NameNode上传

下次合并只需下载edits即可

每一个block大约占用元数据150byte

NameNode硬盘坏掉后 可以将Secoundary NameNode 的工作目录拷贝到NameNode工作目录中

可以配置多个NameNode工作目录 hdfs-site.xml

1