假设有5个文件,每个文件大小为150 mb。现在,当我将这些文件放入hdfs(块大小为64 mb)中时,每个文件和全部块将包含多少个块。还有所有文件的分割数量。以及多少个映射器
3 blocks
每个文件都有(64mb,64mb,32mb)。所以总块数5*3 = 15
因此,分割数将为15。因此,映射器的数目(如果使用FileInputFormat
)= 15。
解释:
HDFS不会占用整个块来存储大小<块大小的文件。我们可以考虑一个示例,假设HDFS块大小= 64MB。我们要存储一些大小为10MB的文件,然后名称节点将执行以下操作:·搜索可用块
·客户将日期写入其中
·关闭写入器后,就认为该文件已关闭以进行写入。即,创建的文件大小为10MB
·然后,该块中有53MB可用空间。这将被释放并添加到可用空间。
·因此,该文件的块仅占用10MB(将发生块调整大小)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句