hdfs單個節點内多個磁盤不均衡時(比如新加磁盤),需要手工進行diskbalancer操作,指令如下
其中thresholdPercentage的注釋有歧義,看起來是根據絕對值進行均衡的,檢視代碼
org.apache.hadoop.hdfs.server.diskbalancer.datamodel.DiskBalancerVolumeSet
主要有兩個函數,
computeVolumeDataDensity:檢視一個盤的資料密度,計算方法為 目前盤的空間占用比例(dfsUsedRatio)- 所有盤的空間占用比例(idealUsed)
isBalancingNeeded:判斷一個盤是否需要均衡,即資料密度的絕對值是否超過參數設定(thresholdPercentage)
是以實際均衡的時候考慮的是空間占用比例,而不是空間占用絕對值
---------------------------------------------------------------- 結束啦,我是大魔王先生的分割線 :) ----------------------------------------------------------------
由于大魔王先生能力有限,文中可能存在錯誤,歡迎指正、補充! 感謝您的閱讀,如果文章對您有用,那麼請為大魔王先生輕輕點個贊,ありがとう