HDFS Balancer - 适用于具有 1KB 文件的集群

HDFS Balancer - For cluster with 1KB files

我有一个包含 3 个节点的 HDFS 集群。集群拥有大量小文件 (KB),我已经达到每个节点数百万个块。

我已经向集群添加了 4 个新服务器并启动了平衡器进程,但看起来它并没有做太多事情。 - 目标是减少每台服务器的百万块

为了平衡小文件,我应该更改以下参数的值以支持从 1KB 大小移动文件吗?

Ddfs.balancer.getBlocks.min-块大小=1048

** 我知道 HDFS 应该管理大文件 - 致力于压缩

如果您是 运行 具有 dfs.balancer.getBlocks.min-block-size 选项的版本,那么平衡器将不会移动小于该大小的块。

如果您有一个包含大小文件混合的集群,平衡器会随机选择块。因此,如果大多数块都是小块,它会倾向于移动比大块多得多的小块,然后较小的块倾向于在使用较少磁盘 space 的节点上构建。

引入上述参数是为了阻止这种情况发生。

因此,如果您需要让小方块移动,您需要将该设置调整为小于默认值才能让您的方块移动。