小作业的情况下,所有的map任务会在一个容器里顺序执行,所有map任务处理完后再执行1个reduce任务。是大作业的话,所有map任务会分别发送到不同容器里并行运行。而在一个节点上可以并行运行几个map,reduce任务,取决于节点的资源和每个任务所需的资源(如节点资源为8核8G可用内存,每个任务需要1个核1G内存,则该节点理论上可以开辟8个容器,并行执行8个任务)。在多个节点上的任务并行更是理所当然的,值得一提的是属于同一个作业的map任务和reduce任务不能并行,reduce任务一定是在接收到来自所有map任务的分区数据后再执行。
mapreduce过程详解(基于hadoop2.x架构) (6)
内容版权声明:除非注明,否则皆为本站原创文章。