MapReduce 执行流程图
图1.1 MapReduce 执行流程图
 MapReduce伪代码:
         实现Map和Reduce两个函数[3]
Map函数和Reduce函数用户自己实现的,这两个函数的作用是定义任务本身。
Map函数
在接受一个键值对(key-value pair)的同时会产生一组中间键值对。MapReduce框架会将map函数产生的中间键值对里键相同的值传递给一个reduce函数。
ClassMapper
methodmap(String input_key, String input_value):
// input_key: text document name
// input_value: document contents
for eachword w ininput_value:
EmitIntermediate(w, "1");
Reduce函数
接受一个键,以及相关的一组值,将这组值进行合并产生一组规模更小的值(通常只有一个或零个值)。
ClassReducer
method reduce(String output_key,Iteratorintermediate_values):
// output_key: a word
// output_values: a list of counts
intresult = 0;
for eachv inintermediate_values:
result += ParseInt(v);
Emit(AsString(result));

Dryad:
     Dryad是微软发布的分布式并行计算平台,他是微软为了抗衡Google公司的MapReduce而开发的。微软的Dryad项目主要研究用于编写并行和分布式程序的编程模型。
 DryadLINQ被用于在该平台上构建应用。与谷歌开发的平台MapReduce相似的地方是Dryad也是通过分布式计算来实现对于海量数据的处理。但它与与MapReduce还是有不同之处:Dryad为Windows HPC Server的计算机集群设计的,但DryadLINQ使用的是.NET的LINQ查询语言模型。
Dryad的“社区技术预览”要求必须有基于Windows HPC Pack 2008 R2 Enterprise的计算机集群,并且安装有Service Pack 1。
上一篇:基于VC++的图像锐化算法的研究与实现
下一篇:jsp+mysql中小型药店供销存管理系统的设计与实现

高职院校公共机房的管理维护【2471字】

高级RFID阅读器應用對处理器的要求【1354字】

风机风量自动报警装置【517字】

项目管理茬软件中的應用【5351字】

随机型存储模型應用研究【1393字】

间谍软件之危害及其防范對策【1382字】

银行行办公信息服务系统【1544字】

C#学校科研管理系统的设计

国内外图像分割技术研究现状

公寓空调设计任务书

中国学术生态细节考察《...

AT89C52单片机的超声波测距...

志愿者活动的调查问卷表

医院财务风险因素分析及管理措施【2367字】

神经外科重症监护病房患...

承德市事业单位档案管理...

10万元能开儿童乐园吗,我...