Mapreduce模型为什么要分成map和reduce两个阶段?是为了任务的分配的细粒度吗?

如题所述

是为了实现分布式计算,提高计算效率。
个人觉得一个需要处理大量数据集的任务,如果想提高计算效率,可以将任务分成多个小部分来进行,每个部分处理一部分数据,就像hadoop的map任务一样,但是很多情况下需要都是整个数据集进行计算操作,单单的分成每个单独的小部分虽然能提高计算效率,但是导致无法完成实际需求,是没有任何意义的,所以添加一个reduce阶段,负责将分成多个部分计算的结果汇总进行处理,使得更加的满足一般需求。当然这也不是万能的,很多情况下还是无法满足实际需求。这就是hadoop不是万能的原因,很多问题是无法使用hadoop进行处理的。
温馨提示:答案为网友推荐,仅供参考
相似回答