Hadoop文件系统元数据管理机制-LMLPHP

edits log 默认是 64MB,当写满的时候或者到一定周期的时候,Namanode就会进行 CheckPoint。Checkpoint是一个内部事件,这个事件激活以后会触发数据库写进程(DBWR)将数据缓冲(DATABUFFER CACHE)中的脏数据块写出到数据文件中。

这里仅仅是以一份副本来描述,实际上默认是切片后每一个切片的数据块都有三份副本,保存在不同的Datanode中,假设有多个不同的机架,每个机架有多台主机,意味着有多个机架上面的Datanode,每一台主机作为一个Datanode,数据块的副本保存顺序是:

  • 1、先在本机架上面找寻最近的一台主机保存第一份副本;
  • 2、然后到其他机架上面随机选择一台主机保存第二份副本;
  • 3、最后再在本机架上面除第一份副本的主机外随机选择另一台主机保存第三份副本。
若是Namenode宕机了,还能否恢复数据?重启集群之后还能提供服务么?

可以恢复数据,通过FSimage恢复数据;Namenode宕机了提供不了查询数据和保存数据的功能,因此不能提供服务。可以使用 多个Namenode副本,副本namenode与namenode的数据保持一致,这里是HA高可用机制,一个namenode宕机了,由另一个namenode顶替继续提供服务。

01-06 03:30