1、NameNode工作机制
1.1、NameNode&Secondary NameNode 工作机制
1)第一阶段:namenode 启动
(1)第一次启动namenode格式化后,创建fsimage(记录文件的最终状态)和edits(记录操作日志)文件。如果不是第一次启动,直接加载编辑日志和镜像文件到内存。
(2)客户端对元数据进行增删改的请求。
(3)namenode 记录操作日志,更新滚动日志。
(4)namenode 在内存中对数据进行增删改查。
2)第二阶段:Secondary NameNode 工作 (合并edits和fsimage文件)
(1)Secondary NameNode 询问 namenode 是否需要 checkpoint。直接带回 namenode 是 否检查结果。
(2)Secondary NameNode 请求执行 checkpoint。
(3)namenode 滚动正在写的 edits 日志。
(4)将滚动前的编辑日志和镜像文件拷贝到 Secondary NameNode。
(5)Secondary NameNode 加载编辑日志和镜像文件到内存,并合并。
(6)生成新的镜像文件 fsimage.chkpoint。
(7)拷贝 fsimage.chkpoint 到 namenode。
(8)namenode 将 fsimage.chkpoint 重新命名成 fsimage。
1.2、镜像文件和编辑日志文件
namenode 被格式化之后,将在/opt/module/hadoop-2.7.2/data/tmp/dfs/name/current 目录中 产生如下文件:
(1