HDFS 可靠性

冗余副本策略

机架策略

心跳机制

安全模式

校验和

回收站

元数据保护

        在数据节点启动后,会把本地的文件系统遍历一次,产生一份数据块以及本地文件对                 应关系的清单叫做块报告,会汇报给NameNode

Hadoop机架感知

集群中各个节点之间会相互传递信息包

心跳机制

        nameNode周期性从datanode接受心跳信号和块报告

        nameNode根据块报告验证元数据

        没有按时发送心跳的datanode会被标记为宕机,不会再给它任何I/O请求

        如果datanode失效造成副本数量下降,并且低于预先设置的阈值,namenode会检测出                 这些数据块,并在合适的时机进行重新复制

        引发重新复制的原因还包括数据块损坏,磁盘错误,复制因子被大增

安全模式

        NameNode启动时会经过一个"安全模式"阶段

        安全模式阶段是不会产生数据写

        在此阶段namenode收集各个datanode的报告,当数据块达到最小副本数以上时,会被                 认为是"安全"的在一定比例(可设置)的数据块被确定为"安全"后,再过若干时间退

        出安全模式

        当检测到副本数不足的数据块时,该块会被复制到达最小副本数

校验和

        在文件创立时,每个数据块都产生校验和

        校验和会作为单独一个隐藏文件保存在命名空间下

        客户端获取数据时可以检查校验和是否相同,从而发现数据块是否损坏

        如果正在读取的数据块损坏,则可以继续读取其他副本

元数据保护

        映像文件和事物日志是namenode 的核心数据,可以配置拥有多个副本

        副本会降低namenode的处理速度,但增加安全性

        namenode依然是单点,当宕机的时候需要手动切换