北极星

搜索历史清空

  • 水处理
您的位置:光伏分布式光伏技术正文

电力软件:分布式并行计算平台Dryad入门(图)

2011-07-04 09:33来源:英大网关键词:MapReduceDryad电力软件收藏点赞

投稿

我要投稿

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

Dryad与云计算

云计算是网格计算(GridComputing)、分布式计算(DistributedComputing)、并行计算(ParallelComputing)、效用计算(UtilityComputing)、网络存储(NetworkStorageTechnologies)、虚拟化(Virtualization)、负载均衡(LoadBalance)等计算机技术和网络技术相融合的产物。典型的云计算技术特征可分为虚拟化技术、分布式技术、并行计算/分布式计算、XaaS、WEBX.0、数据存储、网络技术等等。

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

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

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

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

Dryad的架构

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

DryadJob结构

DryadJob结构

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使用.net的linq查询语言模型。dryad使.net程序员可以利用数据中心的服务器集群对数据进行并行处理,这样使得程序员在操作数千台机器时,无需关心并行处理的细节。本文将从dryad与云计算、dryad的架构、dryadlinq、dryad同mapreduce的比较、dryad的应用及前景这五个方面来进行介绍。

dryad与云计算

云计算是网格计算(gridcomputing)、分布式计算(distributedcomputing)、并行计算(parallelcomputing)、效用计算(utilitycomputing)、网络存储(networkstoragetechnologies)、虚拟化(virtualization)、负载均衡(loadbalance)等计算机技术和网络技术相融合的产物。典型的云计算技术特征可分为虚拟化技术、分布式技术、并行计算/分布式计算、xaas、webx.0、数据存储、网络技术等等。

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

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

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

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

投稿与新闻线索:陈女士 微信/手机:13693626116 邮箱:chenchen#bjxmail.com(请将#改成@)

特别声明:北极星转载其他网站内容,出于传递更多信息而非盈利之目的,同时并不代表赞成其观点或证实其描述,内容仅供参考。版权归原作者所有,若有侵权,请联系我们删除。

凡来源注明北极星*网的内容为北极星原创,转载需获授权。

MapReduce查看更多>Dryad查看更多>电力软件查看更多>