fsimage文件:即命名空间映像文件,是内存中的元数据在硬盘上的checkpoint,包含文件系统中的所有目录和文件inode的序列化信息。

edits:文件系统的写操作首先把它记录在edit中。

合并过程

1.secondary namenode通过周期性(五分钟),通过getEditLog获取editlog大小,当其达到合并的大小时通过RollEditLog方法进行合并。

2.namenode停止使用edits文件,并生成一个新的临时的edits.new文件。

3.Secondarynamenode通过namenode内建的Http服务器,以get的方式获取edits与fsimage文件。Get方法中携带着fsimage与edits的路径。

4.Secondaryname将fsimage载入内存并逐一执行edits中的操作,生成新的fsimage文件。

5.执行结束后,会向namenode发送http请求,告知namenode合并结束,namenode通过http post的方式获取新fsimage文件。

6.Namenode更新fsimage文件中记录检查点执行的时间,并改名为fsimage文件。

7.Edit.new文件更名为edit文件。

注:由此可知namenode 与 secondarynamenode 有着相似的内存需求,因为secondarynamenode也会将fsimage载入内存,因此secondarynamenode需要运行在一台专门机器上。

Fsimage 与 EditLog定义及合并过程

转载于:https://my.oschina.net/134596/blog/1641305

相关文章:

  • 2021-04-13
  • 2021-07-18
  • 2022-12-23
  • 2021-10-07
  • 2021-04-30
  • 2021-05-24
  • 2021-06-18
  • 2021-12-22
猜你喜欢
  • 2021-07-25
  • 2021-05-29
  • 2022-12-23
  • 2021-10-10
  • 2021-04-08
  • 2021-08-23
  • 2021-12-17
相关资源
相似解决方案