天天看點

hadoop : hdfs的心跳時間設定及心跳檢測算法

     datenode以固定周期向namenode發送心跳,namenode如果在一段時間内沒有收到心跳,就會标記datenode為當機。

此段時間的計算公式是:

timeout  = 2 * heartbeat.recheck.interval + 10 * dfs.heartbeat.interval

而預設的heartbeat.recheck.interval 大小為5分鐘,dfs.heartbeat.interval預設的大小為3秒。

是以namenode如果在10分鐘+30秒後,仍然沒有收到datanode的心跳,就認為datanode已經當機,并标記為dead

注意:hdfs-site.xml中

heartbeat.recheck.interval的機關為毫秒

dfs.heartbeat.interval的機關為秒

http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml

繼續閱讀