插槽,地图任务,数据拆分,Mapper之间的差异和关系

时间:2011-11-18 08:54:19

标签: hadoop mapreduce

我已经通过几本hadoop信息书和论文。

Slot是节点上的map / reduce计算单元。它可能是map或reduce slot。 据我所知,split是HDFS中的一组文件块,它们具有存储它们的节点的长度和位置。 Mapper是类,但是当代码被实例化时,它被称为map任务。 我对吗 ? 我不清楚地图任务,数据拆分和Mapper之间的区别和关系。

关于调度我理解当节点的地图槽空闲时,从非运行的地图任务中选择地图任务,并且如果地图任务要处理的数据是节点则启动。 任何人都可以根据上述概念清楚地解释它:插槽,映射器和地图任务等。

谢谢, 阿伦

4 个答案:

答案 0 :(得分:4)

  

据我所知,split是HDFS中的一组文件块,它们具有相同的节点长度和位置。

InputSplit是特定映射器将处理的数据单元。它不一定只是一组HDFS块。它可以是一行,来自DB的100行,50MB的文件等。

  

我不清楚地图任务,数据拆分和Mapper之间的差异和关系。

InputSplit由map任务处理,Mapper的实例是Map任务。

答案 1 :(得分:0)

据我了解:
第一个数据在HDFS中分割为数据节点
然后当有新工作时,工作跟踪器将此工作划分为Map并减少任务 然后,作业跟踪器将每个地图任务分配给已经具有与此地图任务相关的数据分割的节点,因此数据在节点中是本地的,并且移动数据将没有成本,因此执行时间尽可能少
但有时我们必须将任务分配给没有数据的节点,因此节点必须通过网络获取数据然后进行处理

答案 2 :(得分:0)

输入拆分不是数据,它是对映射缩减过程的特定数据量的引用。通常它与块大小相同,因为如果两者的大小不同并且某些数据在不同的节点上,那么我们需要传输该数据。

答案 3 :(得分:0)

MAPPER:mapper是一个类。 MAPPER PHASE:映射器阶段是输入,输出代码,用于转换键和值对(键,值)中的值。 MAPPER SLOT:执行mapper和reducer代码。