所有HDFS磁盘数据存储不均情况的终极处理方案

本文探讨了HDFS中多节点及单节点各磁盘存储不均的问题,详细解析了在hadoop2.x和3.x版本下的处理策略,旨在提供终极解决办法。
摘要由CSDN通过智能技术生成

一、多节点存储不均

1、现有多节点存储不均:

1、先设置带宽 hdfs dfs -setBalancerBandwith 字节数

2、然后执行脚本start-balancer.sh -threshold n
   或者 hdfs balancer -threshold n




说明:
    第1步:
        设置的带宽为datanode间平衡数据时消耗的最大带宽,默认值为1048576(1 M/S)。该值不能设置
很大,否则会造成MapReduce程序执行缓慢。
        最好是通过一个crontab脚本每晚执行一下数据平衡操作。

    第2步:
        当n小于{最大值|abs(集群总体存储率x-任意一数据节点的存储率y)}时,会执行
start-balancer.sh或hdfs    balancer命令,否则,这两个命令不执行。abs为绝对值。
        用人话来解释的话:当所有节点存储率与集群总存储率偏差小于n%时,默认集群处于存储平衡状态,
不执行数据平衡操作。
        n为5,表示百分之五。默认值为10。





注意:
    1、第2步会在执行命令的机器上新开一个Rebalance Server进程,所以一定不要在NameNode上执行数据
平衡操作,以免加重NameNode的压力,影响NameNode工作。应该找一台不太繁忙的DataNode或者是新加的
DataNode上执行。
    2、数据平衡只能平衡单机架各节点间的数据(节点内各磁盘的也平衡不了,hadoop 3.x能),无法平衡
整个集群。因为hadoop在设计balancer程序的时候有一条原则是,不改变机架的总block数。这就要求我们在
配置机架时,将每个机架的总存储设置相近大小。
    3、stop-
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二百四十九先森

你的打赏是我努力的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值