0

我对以下情况感到困惑:一个文件(大小<块大小,副本= 2)存储在hdfs中,使用“hadoop fsck + fileName”来计算块的数量,因为副本= 2,然后是“总块”应该是 2。但是,“hadoop fsck”的结果是 1,“hadoop fsck”的输出是这样的:

总块(已验证):1(平均块大小 514399 B)

怎么了?hadoop如何存储文件?

4

1 回答 1

0

你的假设是错误的。Hadoop 计算没有复制的块数。您可以在浏览 hadoop 文件系统时检查此项。如果您选择一个文件,您可以看到如下输出:

Total number of blocks: 1
471365007463424017:     IP1:Port        IP2:Port        IP3:Port

这是一个位于 3 台不同机器上的块(复制因子为 3)。

于 2012-11-09T08:33:34.183 回答