天天看點

Hadoop之 Balancer平衡速度

1. dfs.datanode.max.transfer.threads

修改dfs.datanode.max.transfer.threads=4096 (如果運作HBase的話建議為16384),

指定用于在DataNode間傳輸block資料的最大線程數,老版本的對應參數為dfs.datanode.max.xcievers。

2. dfs.datanode.balance.bandwidthPerSec

修改dfs.datanode.balance.bandwidthPerSec=52428800,指定DataNode用于balancer的帶寬為50MB,

這個根據情況而定,如果交換機性能好點的,完全可以設定100MB,機關是Byte,

如果機器的網卡和交換機的帶寬有限,可以适當降低該速度,比如10MB,預設是1048576(1MB)。

hdfs dfsadmin-setBalancerBandwidth 52428800

3. dfs.balancer.block-move.timeout

以毫秒為機關移動的最大時間。如果這個設定大于0,平衡器将停止等待一個塊移動完成。在典型的叢集中,3到5分鐘的逾時是合理的。

如果逾時發生在很大比例的塊移動中,則需要增加。它也可能是太多的工作被分派,并且許多節點的帶寬總是超過帶寬限制。

在這種情況下,可能需要調整其他平衡器參數。預設情況下,它是禁用的。

4. dfs.balancer.max-no-move-interval

如果這個指定的時間量已經過去,并且沒有一個塊被移出源DataNode,那麼将會有更多的努力在目前的平衡疊代中移出這個DataNode的塊。

文章可以轉載,必須以連結形式标明出處。

本文轉自 張沖andy 部落格園部落格,如需轉載請自行聯系 原作者原文連結:http://www.cnblogs.com/andy6/p/8397791.html

繼續閱讀