我只有在我的namenode中有这个:

<property>
  <name>dfs.replication</name>
  <value>3</value>
</property>

在我的数据节点中,我有这个:
<property>
  <name>dfs.replication</name>
  <value>1</value>
</property>

现在我的问题是,复制因子是3还是1?

目前,hdfs dfs -ls hdfs:///user/hadoop-user/data/0/0/0的输出显示1个复制因子:
-rw-r--r--   1 hadoop-user supergroup      68313 2015-11-06 19:32 hdfs:///user/hadoop-user/data/0/0/0/00099954tnemhcatta.bin

感谢您的回答。

最佳答案

默认情况下,复制因子是3,这在大多数分布式系统中都是标准的。如果复制因子设置为3(HDFS中的默认值),则将有一个原始块和两个副本。在大多数情况下,当我们在单节点群集(单机)上工作时,我们将其放入1。因为如果我们取3,那么将没有任何好处,因为所有副本都在单台计算机上。如此简单的理解。在多节点群集中,在故障中使用的复制因子应为3,在单机中使用的复制因子应为1。

10-01 00:45