Jul 9, 2008

【典藏】网格计算

网格计算:下一代互联网技术
王亚章
  编者按:随着“下一代网络”蓝图的浮现,“网格计算”已成为人们关注的热点。但是,究竟什么是“网格”?它和电力网有什么区别与联系?推动和制约其发展的因素有哪些?请看北京大学计算机系研究员、电子商务协会CTO王亚章的精彩论述。

  一面镜子反射的阳光能量有限,但是众多镜子“集群”在一起,反射的能量就很大了。关于阿基米德的传说中,他指挥叙拉古城居民用众多镜子反射阳光烧毁了入侵的罗马帝国战舰,这就是一个极好的例子。现今,很多领域需要强大的计算能力,但是却没有能力配备足够高端的服务器。于是,人们将思路放到了“集腋成裘”上,这引发了“网格计算” 这一概念的出现。

  网格计算(Grid Computing)的由来是因为这种计算方式像格子一样的体系结构。它试图将过剩的计算能力以及其它闲置的IT资源联系起来,以供应给那些在一定时间内需要高性能计算能力的部门。2002年11月,日本国家高级工业科技研究所从日本向美国发送数据,速度高达707Mbps——在1万公里以上的距离之间以如此高的速度传送数据,这在世界上尚属首次,此次试验就是通过网格系统实现的。

  简单地讲,网格是把互联网上的众多计算资源整合成一台虚拟的超级计算机,将以CPU为主的各种资源“拧成一股绳”,实现各种资源的全面共享。当然,网格并不一定非要跨越国界,也可以构造地区性的网格,如城市网格、企业内部网格、局域网网格,甚至家庭网格等等——网格的根本特征,不是它的规模,而是资源共享。

  随着网格计算的发展,也有人把它看成是未来的互联网技术。国外媒体常用“下一代互联网”、“互联网2”、“下一代Web“等词语来称呼与网格相关的技术。企业界用的名字就更多了,包括内容分发、服务分发、电子服务、实时企业计算、分布式计算、P2P计算、Web服务等。这些名词所代表的技术有一个共同点,即将互联上的资源整合成一台超级服务器,有效地提供内容服务、计算服务、存储服务等。

  网格vs电力网

  为了更好地理解网格计算,我们先看看另外一种“格子”—电力网—是如何工作的。可以说,电力网的模式是网格努力的方向。在打开电灯的时候,几乎没人考虑他所用的电能是从哪个发电厂来的。

  互联网的情形如何呢?人们获取信息的时候,并不是直接从互联网本身获取,而是必须告诉计算机去访问某一个特定的网站—这就好比,我们在打开电灯之前,先告诉它我们需要从哪一个电站获得电能一样笨拙。网格的目标,就是让人们使用网络资源像用电一样简单。而且,值得注意的是,一旦某家工厂用电量激增,可以凭借电网上为数众多的电厂有效分解这一负担—如果这家工厂不采用电网供电,而是单独使用自己的发电机工作,恐怕将自己的发电机“累疯”了也“难以为继”。电力网上有效解决负载平衡的经验,也是网格的发展方向之一。

  理解了电力网模式,就易于理解网格计算能够提高企业计算机利用率的问题了。许多企业每年在信息技术方面的投入都相当巨大,但是仍然不能满足工作的需要。在有的单位,配备了几百台计算机,但是在高峰期,即便一千台电脑也远远不够用。而一旦设计结束,大量的电脑又会闲置无用。

  事实上,我们现在还没有实现资源层面的共享,只有信息的传输,所以会出现如此的“尴尬”。在理想的网格世界,成千上万台服务器的闲置时间可予以利用,可以租给需要大量计算能力的人。与对等网络、集群式超级计算机以及寻觅外星生命的SETI@home项目不同,网格计算的独特之处在于,能够允许多个用户同时工作,而非将所有计算能力集中于单一任务上。

  各领风骚二十年

  网格计算不是未来派的概念,它已经是实际的应用。加拿大平台计算公司首席技术官Songnian Zhou对于网格的前景十分看好。他认为:第一代处理方式(大型主机集中式处理)从上个世纪六十年代开始蓬勃发展了二十年,第二代计算模式(C/S模式)从上个世纪八十年代涌现至今也有了二十年。今天,我们已经看到,网格计算在商业界已经出现了一些成功的应用;尚处于起步阶段的网格计算这种企业信息系统第三代处理方式,估计也能至少使用20年。高端存储、分布式资源负载管理、协同工作、数据挖掘等领域,业已成为网格计算初试牛刀的战场。

  推动与制约

  软件和硬件产业的不断发展,让网格技术逐步完善,并走向现实;然而,网格思想的提出,也给软件和硬件产业提出严峻的挑战。

  实现信息服务网格应用的关键在于网格管理软件。网格管理软件在操作系统之上,可以看成是一种中间件。在应用网络化的时代,单机操作系统的地位已经降低,网格管理软件实际上是更高层次的网格操作系统,其核心技术主要是一体化的信息平台、语义网站、智能代理和知识本体等技术。

  网格技术的逐步成熟,存在几个主要的推动力量,分别是需求、技术和标准三个方面。

  需求:企业要求互联网应用要有非常强健的基础设施,比如可靠性、可伸缩性和安全性等。客户希望有多种的实现方式,无论是分布式、集中式,或者是客户自己要经营,或是外包经营,这些客户希望能够自己来决定。不但是这样,他们希望一旦作了决定之后,要从一个方式改到另一个方式是很容易的。现在,IT系统越来越复杂,如何使其管理成本降到最低呢?所有的这些使得网格计算的市场需求日益成熟。

  技术:从这十几年的发展来看,无论是CPU、存储、带宽都有非常大数量级的改进,跟十几年前不可同日而语。技术的发展已经能够让我们推动互联网进入到一个新的时代。

  标准:这是最重要的。分布在众多地点的不同计算资源要进行动态整合,节点之间的互操作不可避免,这就需要有一系列的标准协议和标准中间件去规范用户与资源之间的协同、建立、管理和挖掘共享关系。借助标准推行,以及协同与合作,互联网必将进入到网格的时代。

  当然,网格的发展还有很多制约因素。为了促进网格计算的广泛应用,实现让用户随心所欲地共享网格计算中的各种资源,还必须考虑以下问题:

  网格计算的兴起将改变传统的Client/Server和Client/Cluster结构,形成新的Pervasive/Grid(普适计算/网格计算)体系结构。在这种结构中,客户端是各种各样的上网设备,而连在网上的各种服务器将组成单一的逻辑上的网格(Grid)。

  在这种理念里,服务器的瓶颈不再是CPU和存储器,而是I/O子系统(I/O是输入输出的简称)——高性能的I/O子系统将是网格时代的一个主要研究方向。这是因为,在网格的应用中,由于信息资源的需求与供给都在动态变化而且分布在各个不同的位置,完成用户要求的一项服务可能要调用不同节点的服务器、数据库或者软件,因此对服务器的响应时间、网络的带宽。特别是网格管理软件的复杂性与灵活性以及网络上各种设备的互操作性都有很高的要求。

  此外,要进一步解决人机通信的问题,还要解决网格上资源共享中的知识产权问题,以及要保障网格计算的安全性。

No comments:

Powered By Blogger