SecondaryNameNode在Hadoop HDFS中的核心作用是为NameNode提供元数据管理支持,具体功能如下:

一、核心功能:周期性元数据合并(检查点机制)

  1. 合并FsImage与Edits材料

    • NameNode运行时,元数据修改记录在Edits日志中,而完整元数据快照存储在FsImage文件。
    • SecondaryNameNode定期触发检查点(Checkpoint)
      • 从NameNode获取当前FsImageEdits日志 ;
      • 在本地合并生成新FsImage(包含最新元数据) ;
      • 将新FsImage推送给NameNode替换旧文件,并清空已合并的Edits日志 。
        价值:避免Edits日志无限增长,减少NameNode重启时的元数据恢复时间。
  2. 元数据备份

    • 存储合并后的FsImage副本,当NameNode故障时可手动恢复部分元数据(非实时热备) 。

二、关键设计逻辑

  1. 非高可用(HA)组件

    • 与HA模式的Standby NameNode本质不同:
      • SecondaryNameNode:仅周期性合并元素材,不实时同步状态,故障时需手动介