关于 HDFS ,我从他们的网站的“数据复制”部分(以下链接)下看到:

http://hadoop.apache.org/docs/r1.2.1/hdfs_design.html#Data+Replication

“文件中的所有块,除了最后一个块都是相同大小”

您能否让我知道最后一块不是相同大小的原因是什么?

难道总的内存分配可能在这里起作用?

但是,如果内存大小不是问题,那么最后一个块是否仍将与文件的其余块大小不同?

如果是的话,请您详细说明一下吗?

任何与JIRA进行此开发工作的链接将不胜感激。

最佳答案

实际上,这根本不是问题。实际上,不确定文件的最后一块是否可以具有相同的大小。

考虑一个大小为1000 MB的文件,该块为128MB,然后将该文件分成8个块,其中前7个块的大小为偶数,等于128MB。

这7个块的总大小将为896MB(7 * 128MB),因此剩余大小将为104MB(1000-896)。因此,最后一个块的实际大小将为104 MB,其中其他7个块为128 MB。

namenode将为存储在HDFS上的文件的每个块分配数据块。它不会考虑大小小于数据块大小的块。

HDFS旨在将数据块存储在大小相等的数据块中,以便名称节点可以轻松计算和维护数据节点上可用的数据块。

10-05 21:14
查看更多