我的文件大小为65MB,默认hdfs块大小(64MB),那么将为我的文件分配多少64MB块?
是1-64MB块,1-1MB块还是2-64MB块?如果它是2-64MB块则会浪费63MB的剩余部分还是会被分配给其他文件?
答案 0 :(得分:2)
答案 1 :(得分:2)
根据this page。看起来它将是一个64 MB块和一个1 MB块。
HDFS通常无法意识到一个区块中的最终记录可能只是部分记录,其余内容分流到下一个区块。 HDFS只想确保将文件拆分为与Hadoop实例的预定义块大小匹配的大小均匀的块...并非您需要存储的每个文件都是系统块大小的精确倍数,因此最终的数据块为文件只使用所需的空间。
答案 2 :(得分:0)
答案是2个街区,一个是64MB,另外是1MB。
HDFS就像其他文件系统一样,将文件拆分成块,然后将这些块保存到磁盘中。
但它们之间存在两个主要差异:
因此,HDFS中使用了更大的块大小。
也就是说,Namenode将记录两个65MB的块,但实际的文件系统空间仅为65MB。