datanode
的工作機制
問題場景: 1
、集群容量不夠,怎麼擴容? 2
、如果有一些
datanode
宕機,該怎麼辦? 3
、datanode
明明已啟動,但是集群中的可用
datanode
列表中就是沒有,怎麼辦? 1
概述1、datanode工作職責:
儲存管理使用者的檔案塊資料
定期向namenode匯報自身所持有的block資訊(通過心跳資訊上報)
(這點很重要,因為,當集群中發生某些block副本失效時,集群如何恢復block初始副本數量的問題)
dfs.blockreport.intervalmsec
3600000
determines block reporting interval in milliseconds.
2、datanode掉線判斷時限引數
datanode程序死亡或者網路故障造成datanode無法與namenode通訊,namenode不會立即把該節點判定為死亡,要經過一段時間,這段時間暫稱作超時時長。hdfs預設的超時時長為10分鐘+30秒。如果定義超時時間為timeout,則超時時長的計算公式為:
timeout = 2 * heartbeat.recheck.interval + 10 * dfs.heartbeat.interval。
而預設的heartbeat.recheck.interval 大小為5分鐘,dfs.heartbeat.interval預設為3秒。
需要注意的是hdfs-site.xml 配置檔案中的heartbeat.recheck.interval的單位為毫秒,dfs.heartbeat.interval的單位為秒。所以,舉個例子,如果heartbeat.recheck.interval設定為5000(毫秒),dfs.heartbeat.interval設定為3(秒,預設),則總的超時時間為40秒。
heartbeat.recheck.interval
2000
dfs.heartbeat.interval
13.datanode工作機制
1)當datanode讀取block的時候,它會計算checksum
2)如果計算後的checksum,與block建立時值不一樣,說明block已經損壞。
3)client讀取其他datanode上的block.
4)datanode在其檔案建立後週期驗證checksum
DataNode的工作機制
資料完整性 1 當datanode讀取block的時候,它會計算checksum 2 如果計算後的checksum,與block建立時值不一樣,說明block已經損壞 3 client讀取其他datanode上的block 4 datanode在其檔案建立後週期驗證checksum 掉線時限引數設定...
HDFS中DataNode工作機制
1 datanode工作機制 1 乙個資料塊在 datanode 上以檔案形式儲存在磁碟上,包括兩個檔案,乙個是資料本身,乙個是元資料報括資料塊的長度 塊資料的校驗和以及時間戳。2 datanode 啟動後向 namenode 註冊,通過後,週期性 1小時 的向 namenode 上報所有的塊資訊。...
HDFS中DataNode工作機制
1.datanode工作機制 1 乙個資料塊在datanode上以檔案形式儲存在磁碟上,包括兩個檔案,乙個是資料本身,乙個是元資料 包括資料塊的長度,塊資料的校驗和,以及時間戳 2 datanode啟動後向namenode註冊,通過後,週期性 1小時 的向namenode上報所有的塊資訊。3 心跳是...