设为首页 - 加入收藏
广告 1000x90
您的当前位置:三五图库香港35图库大全 > 并行计算 > 正文

电力软件技术应用:分布式并行计算平台Dryad入门

来源:未知 编辑:admin 时间:2019-05-09

  MapReduce是由Google公司开发的一个针对大规模群组中的海量数据处理的编程模型,在处理T级别以上巨量数据的业务上有着明显的优势。与Google的MapReduce相似,2010年12月21日微软推出了dryad的公测版,Dryad也通过分布式机网络计算海量数据,成为谷歌MapReduce分布式数据计算平台的竞争对手。与MapReduce不同的是,Dryad是针对运行WindowsHPCServer的计算机集群设计的,而且DryadLINQ使用LINQ查询语言模型。Dryad使.Net程序员可以利用数据中心的服务器集群对数据进行并行处理,这样使得程序员在操作数千台机器时,无需关心并行处理的细节。本文将从Dryad与云计算、Dryad的架构、DryadLINQ、Dryad同MapReduce的比较、Dryad的应用及前景这五个方面来进行介绍。

  分布式计算(DistributedComputing)是一门计算机科学,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。

  并行计算(Parallelcomputing,或称并行处理、平行计算)一般是指许多指令得以同时进行的计算模式。

  高性能计算是云计算的特征之一,分布式并行计算是实现高性能计算的关键技术。2004年,谷歌发布了两篇关于MapReduce和分布式文件系统GFS的研究报告,这两篇报告成为Hadoop的基础。Apache将Hadoop变为开源项目,雅虎也对Hadoop进行了单独开发。现在,Hadoop是雅虎的在线基础设施的重要支撑,并且已经被Facebook、Twitter、苹果和微软等科技巨头采用。2008年,微软收购了语义搜索企业Powerset,并将Powerset公司基于Hadoop的相关技术用于必应(Bing)搜索引擎。

  Dryad被设计为伸缩于各种规模的计算平台:从单台多核计算机、到由几台计算机组成的小型集群,直至拥有数千台计算机的数据中心。Dryad执行引擎负责处理大型分布式、并行应用程序中会出现的各种难题:对计算机和它们的CPU进行调度,从通信或计算机的失败中恢复,以及数据在节点之间的传递等等。

  一个Dryad程序员通过使用单向通道来连接并行程序。Dryad系统的总体的构建用来支持有向无环图(DirectedAcyclineGraph,DAG)类型数据流的并行程序。一个Dryad任务被表示为一个有向无环图,当发生重要的计算事件时,这些图甚至在执行期间也能发生变化。DryadJob结构如下图1所示:

  Dryad构建在ClusterService和分布式文件系统之上,它的工作原理是这样的:当用户使用Dryad平台时,任务管理器(JobManager,JM)获取图之后,便会在程序的输入通道准备完毕,并且有可用机器的时候对它进行调度。JM从命名服务器(NameServer,NS)那里获得一个可用的机器,并通过一个维护进程(daemon,D)来调度这个程序。文件,共享内存,或TCP管道都可以作为程序(节点)之间通信用的通道。在运行过程中可以动态改变图的形状,并得到很好的容错性。在调试的时候,整个图也可以运行在单个系统上。

  mapreduce是由google公司开发的一个针对大规模群组中的海量数据处理的分布式编程模型,在处理t级别以上巨量数据的业务上有着明显的优势。与google的mapreduce相似,2010年12月21日微软推出了dryad的公测版,dryad也通过分布式计算机网络计算海量数据,成为谷歌mapreduce分布式数据计算平台的竞争对手。与mapreduce不同的是,dryad是针对运行windowshpcserver的计算机集群设计的,而且dryadlinq使用linq查询语言模型。dryad使.net程序员可以利用数据中心的服务器集群对数据进行并行处理,这样使得程序员在操作数千台机器时,无需关心并行处理的细节。本文将从dryad与云计算、dryad的架构、dryadlinq、dryad同mapreduce的比较、dryad的应用及前景这五个方面来进行介绍。

  分布式计算(distributedcomputing)是一门计算机科学,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果。

  并行计算(parallelcomputing,或称并行处理、平行计算)一般是指许多指令得以同时进行的计算模式。

  高性能计算是云计算的特征之一,分布式并行计算是实现高性能计算的关键技术。2004年,谷歌发布了两篇关于mapreduce和分布式文件系统gfs的研究报告,这两篇报告成为hadoop的基础。apache将hadoop变为开源项目,雅虎也对hadoop进行了单独开发。现在,hadoop是雅虎的在线基础设施的重要支撑,并且已经被facebook、twitter、苹果和微软等科技巨头采用。2008年,微软收购了语义搜索企业powerset,并将powerset公司基于hadoop的相关技术用于必应(bing)搜索引擎。

  dryad被设计为伸缩于各种规模的计算平台:从单台多核计算机、到由几台计算机组成的小型集群,直至拥有数千台计算机的数据中心。dryad执行引擎负责处理大型分布式、并行应用程序中会出现的各种难题:对计算机和它们的cpu进行调度,从通信或计算机的失败中恢复,以及数据在节点之间的传递等等。

  一个dryad程序员通过使用单向通道来连接并行程序。dryad系统的总体的构建用来支持有向无环图(directedacyclinegraph,dag)类型数据流的并行程序。一个dryad任务被表示为一个有向无环图,当发生重要的计算事件时,这些图甚至在执行期间也能发生变化。dryadjob结构如下图1所示:

  dryad构建在clusterservice和分布式文件系统之上,它的工作原理是这样的:当用户使用dryad平台时,任务管理器(jobmanager,jm)获取图之后,便会在程序的输入通道准备完毕,并且有可用机器的时候对它进行调度。jm从命名服务器(nameserver,ns)那里获得一个可用的机器,并通过一个维护进程(daemon,d)来调度这个程序。文件,共享内存,或tcp管道都可以作为程序(节点)之间通信用的通道。在运行过程中可以动态改变图的形状,并得到很好的容错性。在调试的时候,整个图也可以运行在单个系统上。

本文链接:http://1763inn.com/bingxingjisuan/564.html

相关推荐:

网友评论:

栏目分类

现金彩票 联系QQ:24498872301 邮箱:24498872301@qq.com

Copyright © 2002-2011 DEDECMS. 现金彩票 版权所有 Power by DedeCms

Top