在主节点运行期间,HDFS会不断发生更新操作,这些更新操作都是直接被写入到EditLog文件,因此EditLog文件也会逐渐变大。在主节点运行期间,不断变大的EditLog不会对系统性能产生影响,但是当主节点重启时,需要将FsImage加载到内存中,会逐条执行EditLog中的记录,使得FsImage保持最新。如果FsImage很大,就会导致整个过程变得非常缓慢,使得主节点在启动过程中长期处于“安全模式”,无法正常对外提供写操作,影响用户的使用。
这个时候就引入了第二主节点,首先,可以完成EditLog和FsImage的合并操作,减小EditLog文件大小,缩短主节点重启时间;其次,可以作为主节点的检查点,保存主节点中的元数据的信息。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。