1

我构建了HDFS(2个DataNodes)。我将数据存储在HDFS.

我想使用两个数据节点来平衡存储数据。但是当我使用CLI( hadoop fs -put)时,我只存储了一个数据节点

有没有人有解决方案如何将数据完全存储为两个单独的数据?

4

2 回答 2

1

如果您的复制因子设置正确,并且您真的只想平衡使用日期:

hadoop balancer [-threshold <threshold>]

在 Hadoop文档页面上有很多关于再平衡器的信息(PDF 格式) 。

于 2013-02-06T15:58:46.667 回答
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 当然使它递归。

于 2013-02-06T09:09:19.953 回答