一篇文章搞懂HDFS的数据负载均衡策略

写在前面

本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!

本专栏目录结构和文献引用请见1000个问题搞定大数据技术体系

解答

什么是数据负载均衡策略?

HDFS的架构支持数据均衡策略。

如果某个 DataNode 节点上的空闲空间低于特定的临界点,按照均衡策略系统就会自动地将数据从这个 DataNode 移动到其他空闲的 DataNode。

当对某个文件的请求突然增加,那么也可能启动一个计划创建该文件新的副本,并且同时重新平衡集群中的其他数据。

当HDFS负载不均衡时,需要对 HDFS 进行数据的负载均衡调整,即对各节点机器上数据的存储分布进行调整,从而让数据 均匀的分布在各个 DataNode 上,以均衡 IO 性能、平衡 IO、平均数据、平衡集群,防止热点的发生

start-balancer.sh

在 Hadoop 中,包含一个 start-balancer.sh 脚本,通过运行这个工具,启动 HDFS 数据均衡服务。

$HADOOP_HOME/bin 目录下的 start-balancer.sh 脚本就是该任务的启动脚本。

启动命令为

$HADOOP_HOME/bin/start-balancer.sh -threshold 

影响 Balancer 的几个参数:

-threshold

  1. 默认设置:10
  2. 参数取值范围:0-100
  3. 参数含义:判断集群是否平衡的阈值。
  4. 参数含义:理论上,该参数值越小整个集群就越平衡

dfs.balance.bandWidthPerSec

  1. 默认设置:1048576(M/S)
  2. 参数含义: Balancer运行时允许占用的带宽

你可能感兴趣的:(大数据技术体系,大数据,hdfs)