Google MapReduce 中文版阅读心得之什么是mapreduce

1.mapreduce主要应用在什么地方

mapreduce是谷歌给出的使用分布式计算机计算超大规模数据集的一种解决方案,是一种编程模型。

试想一下,有时我们需要处理大规模的数据,需要对大规模数据进行分类统计。单纯的依靠单个计算机很难实现。针对不同的数据处理的情况,为了使性能提升,就需要想方设法提升算法性能。并且对于不同的场景还需要单独编程设计解决方案。

而mapreduce就是一种框架,一种解决大规模数据计算的框架。它的搭建和使用要在分布式的环境下进行。

2.mapreduce是如何工作的,以及它工作环境下有哪些角色。

Google MapReduce 中文版阅读心得之什么是mapreduce_第1张图片
整个图片中我们需要关注这四个部分:map phase ,reduce phase,worker,master。

首先map和reduce的作用我们必须做了解:假如我们现在要统计一大堆蔬菜中每种蔬菜的总重。如果把数据比作不同种类的蔬菜(蔬菜是指品种不同,重量不同,品种就相当于键值对中的键,而重量相当于键值对中的值),那么map主要负责将不同种类的蔬菜进行分类,而reduce就相当于去称量同一种蔬菜总共的重量。总结起来就是map负责分类reduce负责计算。

而这些具体的分类与计算操作都是由程序员指定的。实际执行环境是在一个大型的分布式计算机集群中。此时真正的执行交由master和worker管理。master负责向worker指派任务,worker可以执行map工作,也可以执行reduce工作。具体有多少worker执行map工作,多少个worker执行reduce工作,要自行进行配置。

至此,mapreduce的简单介绍就结束了。

你可能感兴趣的:(论文阅读总结,分布式,mapreduce)