HDFS源码解析之NameNode(standby)元数据源码剖析(八)

1. NameNode(standby)元数据源码剖析

在这里插入图片描述

2. 总结

  • 首先Namenode(standby)节点会通过EditLogTailer这个类的线程,每间隔60s就去检查是否需要做元数据同步了
  • 然后会通过FSImage中调用FSEditLogerLoader去我们的Journalnode节点去拉取数据(通过的是http)
  • 然后会把我们每一条元数据都转换为操作对象,依次对我们的内存中的元数据进行更新
  • 当然我们还需要去给Namenode做checkpoint
  • 他采用的是StandbyCheckpoint来进行每60秒检查一次,是否需要做checkpoint,其中有两个条件,达到一个就可以做checkpoint,
  • 条件一 有超过100w条数据没有做checkpoint了
  • 条件二 已经1个小时没有做了
  • 还是调用的FSImage来进行对NameNode进行checkpoint
  • 首先是将内存中的数据刷写到磁盘上,然后合并元数据
  • 然后通过TransferFsimage来进行创建一个输入流将我们的数据流对拷给NameNode
  • NameNode会对数据进行更新,也就是重命名

猜你喜欢

转载自blog.csdn.net/weixin_43704599/article/details/107239709
今日推荐