【发布时间】:2016-05-18 11:25:37
【问题描述】:
我想了解 mapreduce 作业如何处理数据块。根据我对每个数据块的理解,调用一个映射器。 让我举一个例子。
假设,我有一个长文本文件,在 HDFS 中存储了 4 个节点上的 4 个块 (64 MB) 的数据(让我们忘记这里的复制)
在这种情况下,将在每台机器上调用 4 个地图任务(所有 4 个数据节点/机器) 这是一个问题:这种拆分可能导致部分记录存储在两个块上。像最后一条记录可能已部分存储在块 1(最后)中,而其他部分存储在块 2 中。 在这种情况下,mapreduce 程序如何确保处理完整的记录?
我希望,我已经能够提出我的查询
【问题讨论】:
-
看看this answer。这是一个非常透彻的解释。
标签: mapreduce