HDFS3.x新特性之磁盘均衡器Disk Balancer

磁盘均衡器(diskbalancer)

单个datanode上利用磁盘均衡器特性,对节点内部硬盘进行数据存储的均衡管理。解决原来硬盘数据存储不均衡导致的部分硬盘空闲或部分硬盘出现性能瓶颈的问题。此磁盘均衡器是在同一个DataNode中的不同磁盘之间移动数据,而之前的HDFS均衡器是在不同的DataNode之间移动数据。磁盘平衡器任务涉及三个步骤(通过HDFS的diskbalancer 命令):plan, execute 和 query。

第一步plan
HDFS客户端从NameNode上读取指定DataNode的的必要信息以生成执行计划;磁盘平衡执行计划生成的文件内容格式是Json的,并且存储在HDFS之上。在默认情况下,这些文件是存储在 /system/diskbalancer 目录下面;

第二步excute
通过命令$ hdfs diskbalancer -execute /system/diskbalancer/2019-May-12-21-03-56/192 .168.233.121.plan.json在DataNode上执行这个生成的计划。这个命令将JSON里面的计划提交给DataNode,而DataNode会启动一个名为BlockMover的线程中执行这个计划。

第三步query
我们可以使用 query 命令来查询DataNode上diskbalancer任务的状态:hdfs diskbalancer -query lei-dn-3:20001查询结果为Result: PLAN_DONE则标志均衡完成

发布了15 篇原创文章 · 获赞 28 · 访问量 1140

猜你喜欢

转载自blog.csdn.net/qq_37865420/article/details/105239760