原文地址:http://blog.csdn.net/beidiqiuren/article/details/51759612
DataNode节点超时时间设置
DataNode进程死亡或网络节点故障造成DataNode无法与NameNode通信,NameNode不会立即把该节点判定为死亡,要经过一段时间,这段时间成为超时时长。HDFS默认的超时时长为10分钟+30s。
如果定义超时时长为timeout,则超时时长的计算公式为:
timeout = 2 * heartbeat.recheck.interval + 10 * dfs.heartbeat.interval
默认的heartbeat.recheck.interval为5分钟(单位:毫秒)
dfs.heartbeat.interval为3秒(单位:秒)
在hdfs-site.xml中设置。
HDFS冗余数据块的自动删除
在DataNode被判定死亡之后,HDFS马上开始数据块的容错拷贝。
当该节点重新添加到集群中时,由于该节点上的数据其实并没有损坏,所以造成了HDFS上某些block的备份数超过了设定的备份数,这些多余的数据块经过很长一段时间才会被完全删掉,这个时间取决于hdfs-site.xml中的dfs.blockreport.intervalMsec参数。默认为一小时