MAPREDUCE服务 MRS-配置HDFS DataNode数据均衡:操作场景
操作场景
本章节适用于 MRS 3.x及后续版本。
HDFS集群可能出现DataNode节点间磁盘利用率不平衡的情况,比如集群中添加新数据节点的场景。如果HDFS出现数据不平衡的状况,可能导致多种问题,比如MapReduce应用程序无法很好地利用本地计算的优势、数据节点之间无法达到更好的网络带宽使用率或节点磁盘无法利用等等。所以MRS集群管理员需要定期检查并保持DataNode数据平衡。
HDFS提供了一个容量均衡程序Balancer。通过运行这个程序,可以使得HDFS集群达到一个平衡的状态,使各DataNode磁盘使用率与HDFS集群磁盘使用率的偏差不超过阈值。图1和图2分别是Balance前后DataNode的磁盘使用率变化。
均衡操作时间估算受两个因素影响:
- 需要迁移的总数据量:
每个DataNode节点的数据量应大于(平均使用率-阈值)*平均数据量,小于(平均使用率+阈值)*平均数据量。若实际数据量小于最小值或大于最大值即存在不平衡,系统选择所有DataNode节点中偏差最多的数据量作为迁移的总数据量。
- Balancer的迁移是按迭代(iteration)方式串行顺序处理的,每个iteration迁移数据量不超过10GB,每个iteration重新计算使用率的情况。
因此针对集群情况,可以大概估算每个iteration耗费的时间(可以通过执行Balancer的日志观察到每次iteration的时间),并用总数据量除以10GB估算任务执行时间。
由于按iteration处理,Balancer可以随时启动或者停止。
- MapReduce服务_什么是HDFS_HDFS特性
- MapReduce服务_如何使用MapReduce服务_MRS集群客户端安装与使用
- MapReduce服务_什么是MapReduce服务_什么是HBase
- MapReduce服务_什么是Hue_如何使用Hue
- MapReduce服务_什么是存算分离_如何配置MRS集群存算分离
- MapReduce服务_什么是Loader_如何使用Loader
- MapReduce服务_什么是Flume_如何使用Flume
- MRS备份恢复_MapReduce备份_数据备份
- MapReduce服务_什么是ZooKeeper_如何使用ZooKeeper
- MapReduce服务_什么是Hive_如何使用Hive