hadoop2.0之HDFS集群管理:HeartbeatManager及其报告周期问题

来源:互联网 发布:深圳数据分析师培训 编辑:程序博客网 时间:2024/05/16 19:31

心跳管理器主要用于管理DataNode的心跳,如果某DataNode在一段时间内(10分30秒)停止与NameNode发生心跳,则会将该DataNode直接标记为死亡节点,而不是先退役,因为可能该DN真的已经死亡了,而不用经历退役阶段。为了不引起一连串的DataNode被标记为死亡,每次只允许一个DataNode节点被声明为死亡,并从DatanodeManager,heartbeatManager,networktopology,blockManager中删除信息。

默认情况下,DataNode心跳的时间间隔是3秒,如果加大该时间间隔是否会引入一些问题呢?

1、 无效块删除:该功能影响比较小,因为即使在一段时间内,没有删除该块,也不会造成数据丢失,只会占用部分磁盘空间;

2、 块副本不足:对该功能影响比较大,发现集群中副本数目不足,应该及时地冗余,否则可能因为DataNode出现故障加大丢失数据的风险;

文件读写:如果读写频繁,NameNode没有及时的收集到DataNode剩余空间,可能会造成部分DataNode写数据块失败。
原创粉丝点击