任何人都可以精心解释此命令的用法吗?
hdfs balancer [-source [-f <hosts-file> | <comma-separated list of hosts>]]
我集群中的问题是,我的数据座之一正在利用其容量的93%,其余的是80%。
来自hortonworks文档:
新的-Source选项允许指定源数据列表列表,以便平衡器选择块仅从这些数据码中移动。当列表为空时,所有数据台都可以选择作为源。默认值是一个空列表。
该选项可用于释放群集中某些特定数据模型的空间。如果没有-source选项,在某些情况下,平衡器可能会降低。以下是一个例子。
Datanodes (with the same capacity) Utilization Rack
D1 95% A
D2 30% B
D3, D4, D5 0% B
在上表中,平均利用率为25%,因此D2在10%的阈值之内。没有必要将任何块从或向D2移动。在没有指定源节点的情况下,平衡器首先将块从D2移动到D3,D4和D5,因为它们在同一机架下,然后将块从D1移动到D3,D4和D5。通过将D1指定为源节点,平衡器直接将块从D1移动到D3,D4和D5。
这是HDFS Balancer认真的第二篇文章。我们将解释平衡器在下一篇文章中部署的算法以平衡集群。