MapReduce流程详解

MapReduce源于Google一篇论文,它充分借鉴了“分而治之”的思想,将一个数据处理过程拆分为主要的Map(映射)与Reduce(归约)两步。简单地说,MapReduce就是"任务的分解与结果的汇总"。


MapReduce (MR) 是一个基于磁盘运算的框架,贼慢,慢的主要原因:

1)MR是进程级别的,一个MR任务会创建多个进程(map task和reduce task都是进程),进程的创建和销毁等过程需要耗很多的时间。 

2)磁盘I/O问题,  MapReduce作业通常都是数据密集型作业,大量的中间结果需要写到磁盘上并通过网络进行传输,这耗去了大量的时间。 


注:mapreduce 1.x架构有两个进程:

JobTracker :负责资源管理和作业调度。

TaskTrachker:任务的执行者。运行 map task 和 reduce task。

在2.x的时候由yarn取代他们的工作了。


猜你喜欢

转载自blog.51cto.com/14284607/2386991