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