处理HADOOP中的最后一个数据块

时间:2014-11-06 06:31:07

标签: hadoop bigdata

假设文件XYZ的数据大小为68MB。因此块(默认块为64MB)将为A-64MB和B-4MB。 在B块中,剩余的空间被另一个数据块占用。

因此,当对XYZ数据文件进行处理时,将处理A anb B块数据。自B块 包含另一个文件的数据,HADOOP如何知道块的哪个部分要处理 B块?

1 个答案:

答案 0 :(得分:1)

如果您的文件(XYZ)为68 MB并且假设您的块大小为64MB,那么数据将被拆分为2个块​​。 Block-A将存储64MB数据,然后Block-B将存储4MB的其余部分,并且该块将被关闭(此处没有空间浪费),没有其他文件的数据将是进入Block-B。

因此,在处理时,MapReduce确切地知道要为特定文件处理哪些块。当然,还有其他约束,如输入拆分,MapReduce会在处理块时计算出记录边界。