我是靠谱客的博主 酷炫耳机,最近开发中收集的这篇文章主要介绍HDFS四大机制之负载均衡,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

hadoop集群中多个datanode中每一个datanode存储的数据的占比相当,负载均衡和每一个datanode的硬件相关的

对于hadoop集群来说  namenode会定期检查集群的负载  如果发现集群中datanode节点的负载不均衡的情况下  自动启动负载均衡
进行负载均衡---》 将存储占比大的datanode节点上的数据  移动到 存储占比小的datanode节点上
将node1的数据块  移动  node2上   底层网络传输
将node1上的数据经过网络传输  传递给  node2再将node1上的删除
默认情况下这个带宽是很小的
<property>
  <name>dfs.datanode.balance.bandwidthPerSec</name>
  <value>1048576</value>
  <description>
        Specifies the maximum amount of bandwidth that each datanode
        can utilize for the balancing purpose in term of
        the number of bytes per second.
  </description>
</property>
默认带宽  1m/s 
默认的负载均衡如果集群中的节点很少的  默认的负载均衡完全没问题的

如果集群中的节点很多的时候   默认的负载均衡很难达到需求了
手动启动负载
start-balancer.sh -t 10%
注意:
    1)这个命令不会立即执行  类似于jvm垃圾回收 
    提醒集群空闲的时候  立即执行  加快执行效率
    2)-t 10% 代表我们可接受的最高值和最小值的差距不能超过 10%
    代表负载均衡的  最终停止的要求 没有绝对的负载均衡的  只有相对的
    我们讲的负载均衡  都是占比差在可接受的范围 -t   参数  指定的就是  节点存储的最大-最小的 占比差
    3)这个命令手动执行一定配合带宽调整
    <property>
      <name>dfs.datanode.balance.bandwidthPerSec</name>
      <value>10485760</value>
      <description>
            Specifies the maximum amount of bandwidth that each datanode
            can utilize for the balancing purpose in term of
            the number of bytes per second.
      </description>
    </property>

最后

以上就是酷炫耳机为你收集整理的HDFS四大机制之负载均衡的全部内容,希望文章能够帮你解决HDFS四大机制之负载均衡所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(32)

评论列表共有 0 条评论

立即
投稿
返回
顶部