hdfs中有多少块用于5个文件,每个150 mb

时间:2014-11-21 13:03:26

标签: java hadoop mapreduce

假设有5个文件,每个150 MB。现在,当我将这些文件放在hdfs(块大小为64 mb)时,每个文件和总块的块数是多少。 此外,所有文件的拆分数量也是多少。和多少个映射器

2 个答案:

答案 0 :(得分:3)

每个文件将有3 blocks个(64mb,64mb,32mb)。所以块总数5*3 = 15

因此,分割数将为15.因此,映射器的数量(如果使用FileInputFormat)= 15。

说明:

  

HDFS不会使用整个块来存储大小为<块   尺寸。我们可以考虑一个例子,假设HDFS块大小= 64MB。我们   有一些文件存储大小= 10MB,然后名称节点将   执行:·搜索可用块

     

·客户将日期写入其中

     

·关闭编写器后,认为文件已关闭   写作。即,创建的文件大小为10MB

     

·然后该块有53MB可用。这将会   释放并添加到可用空间。

     

·因此该文件的块只占用10MB(块大小调整   会发生)

答案 1 :(得分:1)

您的文件存储在hdfs中。

1file =100mb
block size=64mb

所以1 file split in 2 block

你有5个文件

5*2=10blocks.

每个分割1个映射器

 10blocks=10mapper

请确认,在您的问题中,标题文件大小为150mb,但问题是100mb。 它将与上述相同。