我构建了HDFS
(2个DataNodes)。
我将数据存储在HDFS
的数据节点中。
我想使用两个数据节点来平衡存储数据。
但是当我使用CLI
(hadoop fs -put
)
有没有人有解决方案如何将数据完全存储为两个独立的数据?
答案 0 :(得分:1)
听起来你问的是如何设置复制因子。如果您有2个数据节点,则复制因子为2将确保所有文件都存储在两个节点上。您可以在Hadoop conf目录中的hdfs-site.xml中进行设置。你想设置:
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
您还可以运行setrep
命令来更改特定文件或目录的复制因子:
hadoop fs -setrep -R 2 <path>
-R当然会使它递归。
答案 1 :(得分:1)
如果你的复制因子设置正确,你真的只想平衡使用日期:
hadoop balancer [-threshold <threshold>]
在Hadoop documentation页面上有关于重新平衡器的许多信息(PDF格式)。