hadoop(6)--NameNode元数据管理(3)

今天分享的的是NameNode中edit日志文件怎么和fsimage合并的,又是什么时候进行合并的,谁负责合并的,好的,带着这几个问题来思考

1,先来一张图说明


合并过程

在这个过程中很好的解释了edit日志文件怎么和fsimage合并的,又是什么时候进行合并的,谁负责合并的,下来我在用文字描述一下

1,默认情况下,当3600秒/edits文件达到64M的时候,要进行合并(checkPoint)操作,这时候NN会通知SNN,让SNN起来干活

2,SNN收到之后会告知NN,不要再往edits文件中写东西了,我要合并了【这个和好理解,一边合并一边写,成何体统,哈哈】

3,NN收到SNN的警告之后,会新建一个edits叫edits_new,NN如果有新的元数据需要记录的时候就往edits_new中写

4,SNN下载NN中的edits和fsimage文件

5,SNN在自己内部进行合并,这样做的好处就是不影响NN,这个也是SNN存在的价值,这个也是设计的一个点睛之处,所以在实际工作中,需要用到的时候,可以想起来这种思路

6,SNN合并完之后,将fsimage.checkpoint上传到NN,这个上传是针对之前的下载来说的,就是传输的意思

7,NN收到fsimage.checkpoint之后,会进行重命名,将fsimage.checkpoint重命名位fsimage,将edits_new重命名位edits,这样就回到NN最初的状态,又可以等待3600秒/64M满了,再走1,2,3,4,5,6,7

好了,早早休息

望指正,不吝赐教!

你可能感兴趣的:(hadoop(6)--NameNode元数据管理(3))