毕业论文

打赏
当前位置: 毕业论文 > 计算机论文 >

K-Means并行计算聚类算法实现(2)

时间:2019-01-07 17:46来源:毕业论文
图1.1 MapReduce 执行流程图 MapReduce伪代码: 实现Map和Reduce两个函数[3] Map函数和Reduce函数用户自己实现的,这两个函数的作用是定义任务本身。 Map函数 在接


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。 K-Means并行计算聚类算法实现(2):http://www.751com.cn/jisuanji/lunwen_28930.html
------分隔线----------------------------
推荐内容