资源描述
第 29卷第 9期
计算机应用
Vol。 29 No。 9
2009年 9月
Journal of Computer App lications
Sep。 2009
文章编号: 1001 — 9081 ( 2009) 09 — 2562 — 06
云计算及其关键技术
陈 全 ,邓倩妮
(上海交通大学计算机科学与工程系 ,上海 200240)
( squirr3@ gmail。 com )
摘 要 :云计算是一种新兴的计算模型 ,它是在网格计算的基础上发展而来的。介绍了云计算的发展历史和应
用场景 ,比较了现有的云计算的定义并给出了新的定义 ,以谷歌的云计算技术为例 ,总结了云计算的关键技术: 数据存储技术 ( Google File System ) 、数据管理技术 (B igTable) 、编程模型和任务调度模型 (M ap 2Reduce)等 ,分析了云计算和网格计算以及传统超级计算的区别 ,并指出了云计算的广阔发展前景。
关键词 :云计算;数据存储 ;数据管理 ;编程模型
中图分类号: TP338. 8 文献标志码: A
C loud com puting and its key techn iques
CHEN Quan, D ENG Q ian ni
(D epartm ent of Com pu ter S cience and Eng ineering, Shangha i J iao Tong U n iversity, S hangha i 200240, Ch ina)
Abstract: Cloud computing is a new computing model; it is developed based on grid computing。
The authors introduced
the development history of cloud computing and its app lication situation;
compared existing definitions of cloud computing and
gave a new definition; took google s cloud computing techniques as an examp le,
summed up key techniques, such as data
storage technology (Google File System ) ,
data management technology
(B igTable) , as well as p rogramm ing model and
task
scheduling model (M ap Reduce ) , used
in
cloud computing; and analyzed the
differences among
cloud computing,
grid
2
and fingered out the broad development p rospects of cloud computing。
computing and traditional super computing,
Key words: cloud2computing;p data storage; data management; p
rogramm ing model
2
0 引言
云计算 ( Cloud Computing)是一种新近提出的计算模式.是分布式计算 ( D istributed Computing) 、并行计算 ( Parallel Computing)和网格计算 ( Grid Computing)的发展。
目前 ,亚马逊、微软、谷歌、IBM、英特尔等公司纷纷提出了“云计划 "。例如亚马逊的 AW S (Amazon W eb Services) [ 1 ] 、
IBM 和谷歌联合进行的“蓝云 ”计划等.这对云计算的商业
价值给予了巨大的肯定。同时学术界也纷纷对云计算进行深
层次的研究。例如谷歌同华盛顿大学以及清华大学合作 ,启
动云计算学术合作计划 ( Academ ic Cloud Computing
Initiative) ,推动云计算的普及 ,加紧对云计算的研究。卡内基
梅隆大学等对数据密集型的超级计算 (Data Intensive Super Computing, D ISC) [ 2 ] 进行研究 ,本质上也是对云计算相关技
术开展研究。
IDC的调查显示 ,未来五年云计算服务将急速增长 ,预期
2012年市场规模可达 420 亿美元.目前企业导入云计算已
逐渐普及 ,并且有逐年成长趋势。估计在 2012 年 ,企业投入在云计算服务的支出将占整体 IT成本的 25% ,甚至在 2013
年提高至 IT总支出的三分之一.
由此可见 ,在各大公司以及学术界的共同推动下 ,云计算技术将会持续发展。
云计算有着广泛的应用前景.如表 1所示。云计算在天
文学 [ 3 ] 、医学等各个领域有着广泛的应用前景。
趋势科技和瑞星等安全厂商纷纷提出了“安全云 "计划。
如今 ,每天有 2万多种新的病毒和木马产生 ,传统的通过更新用户病毒库的防毒模式 ,受到了严峻的挑战 ,该模式使用户端的病毒库过于庞大。趋势科技和瑞星的“安全云 ”将病毒资料库放在“云 ”端 ,与客户端通过网络相连 ,当“云 ”在网络上发现不安全链接时 ,可以直接形成判断 ,阻止其进入用户机
器 ,从根本上保护机器的安全。
表 1 云计算的应用领域
领域
应用场景
地震监测
科研
海洋信息监控
天文信息计算处理
DNA 信息分析
医学
海量病例存储分析
医疗影像处理
网络安全
病毒库存储
垃圾邮件屏蔽
动画素材存储分析
图形和图像处理
高仿真动画制作
海量图片检索
2
E mail服务
互联网
在线实时翻译
网络检索服务
据趋势科技大中华区执行总裁张伟钦介绍 ,趋势科技已
投入了大量资金 ,在全球数个地方建设了新型数据中心。同
时 ,趋势科技还花费了 1 000多万美元 ,租借了 34 000 多台服务器 ,构建了一个服务遍及全球的“安全云 ”。目前趋势科技
收稿日期: 2009 — 03 — 14;修回日期: 2009 - 05 — 09。
作者简介:陈全 ( 1986 — ) ,男 ,安徽滁州人 ,硕士研究生 ,主要研究方向:云计算、数据密集型可扩展计算; 邓倩妮 ( 1973 — ) ,女 ,广西柳州
人 ,副教授 ,博士 ,主要研究方向:对等计算、网格计算、复杂网络拓扑。
第 9期 陈全等:云计算及其关键技术 2563
已将公司中低端的部分产品线放到“云安全 ”计划中 ,而高端
的大部分产品线 ,仍在准备过程中.
谷歌提供的 Gmail、Google Earth、Google Analytics等服务都基于其云计算服务器运行 [ 4 ] 。谷歌基于云计算提供的翻译服务具有现今最好的性能 [ 5 ] .对互联网和美国人生活的一项研究显示 ,大约 70%的在线用户使用以上“云计算 ”服务。
1 云计算的定义
目前 ,云计算没有统一的定义 ,当前云计算的定义主要包括如下几种。
1)维基百科给云计算下的定义。云计算将 IT相关的能
力以服务的方式提供给用户 ,允许用户在不了解提供服务的技术、没有相关知识以及设备操作能力的情况下 , 通过
Internet获取需要的服务 [ 6 ] 。
2)中国云计算网将云计算定义为 : 云计算是分布式计算
(D istributed Computing) 、并行计算 ( Parallel Computing) 和网格计算 ( Grid Computing)的发展 ,或者说是这些科学概念的商业实现 [ 7 ] 。
3)文献 [ 8 ]在综合多个云计算的定义之后 ,给“云 ”下了
如下定义。云是一个包含大量可用虚拟资源 (例如硬件、开发平台以及 I/O 服务 )的资源池。这些虚拟资源可以根据不同的负载动态地重新配置 ,以达到更优化的资源利用率。这种资源池通常由基础设施提供商按照服务等级协议 ( Service Level Agreement, SLA ) 采用用时付费 ( Pay2Per2U se, PPU ) 的
模式开发管理。
对比上述定义 ,可以发现 ,文献 [ 6 ]和文献 [ 8 ]中给出的定义的相似之处在于它们都提到了云计算提供服务。文献
[ 6 ]中的定义主要从云计算用户的角度给出定义 ,即用户在
不了解具体实现的情况下通过 Internet获取服务。文献 [ 7 ]
从云计算的发展脉络的角度给出定义 ,主要说明了云计算的
历史。文献 [ 8 ]给出的定义则是从云计算提供者的角度来给
出定义 ,定义了云计算的后台实现方式 ,以及管理模式。但
是 ,这些定义都仅从一个方面定义云 ,并不完善。结合上述定义 ,可以总结出云计算的一些本质特征 ,即分布式的计算和存储特性 ,高扩展性 ,用户友好性 ,良好的管理性 ,用时付费等。云计算技术具有以下特点.
1 )云计算系统提供的是服务。服务的实现机制对用户透明 ,用户无需了解云计算的具体机制 ,就可以获得需要的服务。
2 )用冗余方式提供可靠性。云计算系统由大量商用计算机组成集群向用户提供数据处理服务。随着计算机数量的增加 ,系统出现错误的概率大大增加。在没有专用的硬件可靠性部件的支持下 ,采用软件的方式 ,即数据冗余和分布式存储来保证数据的可靠性。
3 )高可用性。通过集成海量存储和高性能的计算能力 ,
云能提供较高的服务质量。云计算系统可以自动检测失效节
点 ,并将失效节点排除 ,不影响系统的正常运行.
4)高层次的编程模型。云计算系统提供高层次的编程
模型。用户通过简单学习 ,就可以编写自己的云计算程序 ,在
“云 ”系统上执行 ,满足自己的需求。现在云计算系统主要采用 M ap 2Reduce模型.
5)经济性.组建一个采用大量的商业机组成的集群相
对于同样性能的超级计算机花费的资金要少很多。
6)服务多样性。用户可以支付不同的费用 ,以获得不同
级别的服务等。
为了更好地定义云计算 ,必须从云计算的服务使用者 ,服
务提供者 ,组织方式 ,内部实现机制等方面同时定义。
根据现有定义的不足 ,本文定义云计算为 :“云计算是由
网格计算发展而来的 ,前台采用用时付费的方式通过 Internet
向用户提供服务。云系统后台由大量的集群使用虚拟机的方
式 ,通过高速互联网络互连 ,组成大型的虚拟资源池。这些虚拟资源可自主管理和配置。用数据冗余的方式保证虚拟资源的高可用性。并具有分布式存储和计算、高扩展性、高可用性、用户友好性等特征。"
2 云计算的关键技术
云计算是一种新型的超级计算方式 ,以数据为中心 ,是一种数据密集型的超级计算。在数据存储、数据管理、编程模式
等多方面具有自身独特的技术。同时涉及了众多其他技术 ,
如表 2所示.本章主要介绍云计算特有的技术 ,包括数据存储技术 ,数据管理技术 ,编程模式等.其他相关技术请阅读给出的参考文献.
表 2
云计算涉及的关键技术
技术类型
具体技术
参考文献
设备架设
数据中心节能
文献 [4, 9 ]
节点互联技术
文献 [10 ]
改善服务技术
可用性技术
文献 [11 - 12 ]
容错性技术
文献 [12 - 13 ]
资源管理技术
数据存储技术
文献 [14 — 16 ]
数据管理技术
文献 [11 ]
数据切分技术
文献 [17 ]
任务管理技术
任务调度技术
文献 [12, 17 ]
编程模型
文献 [12, 15 — 17 ]
负载均衡技术
文献 [18 ]
其他相关技术
并行计算技术
文献 [19 - 20 ]
虚拟机技术
文献 [13, 21 — 22 ]
系统监控技术
文献 [23 ]
2。 1 数据存储技术
为保证高可用、高可靠和经济性 ,云计算采用分布式存储
的方式来存储数据 ,采用冗余存储的方式来保证存储数据的
可靠性 ,即为同一份数据存储多个副本。
另外 ,云计算系统需要同时满足大量用户的需求 ,并行地为大量用户提供服务。因此 ,云计算的数据存储技术必须具有高吞吐率和高传输率的特点.
云计算的数据存储技术主要有谷歌的非开源的 GFS
( Google File System ) [ 14 ]和 Hadoop 开发团队开发的 GFS的开源实现 HDFS ( Hadoop D istributed File System ) [ 15 - 16 ] .大部分
IT厂商 ,包括雅虎、英特尔的“云 ”计划采用的都是 HDFS的
数据存储技术。
云计算的数据存储技术未来的发展将集中在超大规模的
数据存储、数据加密和安全性保证以及继续提高 I/O 速率等方面。
以 GFS为例。GFS是一个管理大型分布式数据密集型计算的可扩展的分布式文件系统。它使用廉价的商用硬件搭建系统并向大量用户提供容错的高性能的服务。
GFS和普通的分布式文件系统有以下区别 ,如表 3所示。
2564 计算机应用 第 29卷
表 3 GFS与传统分布式文件系统的区别
文件系统
组件失败
文件大小 数据写方式
数据流和
管理
控制流
GFS
不作为
在文件末尾
数据流和
异常处理
少量大文件
控制流分开
附加数据
传统分布式
作为
修改
数据流和
文件系统
异常处理
大量小文件
控制流结合
现存数据
GFS系统由一个 M aster和大量块服务器构成。M aster存
放文件系统的所有元数据 ,包括名字空间、存取控制、文件分块信息、文件块的位置信息等。GFS中的文件切分为 64 MB的
块进行存储.
在 GFS文件系统中 ,采用冗余存储的方式来保证数据的可靠性.每份数据在系统中保存 3个以上的备份。为了保证
数据的一致性 ,对于数据的所有修改需要在所有的备份上进
行 ,并用版本号的方式来确保所有备份处于一致的状态。
客户端不通过 M aster读取数据 , 避免了大量读操作使
M aster成为系统瓶颈.客户端从 M aster获取目标数据块的位
置信息后 ,直接和块服务器交互进行读操作。
GFS的写操作将写操作控制信号和数据流分开 , 如图
1[ 17 ]所示。
图 1 写控制信号和写数据流
即客户端在获取 M aster的写授权后 ,将数据传输给所有
的数据副本 ,在所有的数据副本都收到修改的数据后 ,客户端才发出写请求控制信号.在所有的数据副本更新完数据后 ,
由主副本向客户端发出写操作完成控制信号。具体请见文献
[ 17 ].
当然 ,云计算的数据存储技术并不仅仅只是 GFS,其他 IT
厂商 ,包括微软、Hadoop 开发团队也在开发相应的数据管理工具。本质上是一种分布式的数据存储技术 ,以及与之相关
的虚拟化技术 ,对上层屏蔽具体的物理存储器的位置、信息等。快速的数据定位、数据安全性、数据可靠性以及底层设备内存储数据量的均衡等方面都需要继续研究完善.
2. 2 数据管理技术
云计算系统对大数据集进行处理、分析向用户提供高效
的服务。因此 ,数据管理技术必须能够高效地管理大数据集.
其次 ,如何在规模巨大的数据中找到特定的数据 ,也是云计算数据管理技术所必须解决的问题.
云计算的特点是对海量的数据存储、读取后进行大量的分析 ,数据的读操作频率远大于数据的更新频率 ,云中的数据管理是一种读优化的数据管理.因此 ,云系统的数据管理往往采用数据库领域中列存储的数据管理模式。将表按列划分后存储。
云计算的数据管理技术中最著名的是谷歌在文献 [ 11 ]
提出的 B igTable数据管理技术.
由于采用列存储的方式管理数据 ,如何提高数据的更新速率以及进一步提高随机读速率是未来的数据管理技术必须解决的问题.
以 B igTable 为例.B igTable 数据管理方式设计者 ———
Google给出了如下定义 [ 11 ] :“B igTable 是一种为了管理结构化数据而设计的分布式存储系统 ,这些数据可以扩展到非常
大的规模 ,例如在数千台商用服务器上的达到 PB ( Petabytes)
规模的数据。”
B igTable对数据读操作进行优化 ,采用列存储的方式 ,提
高数据读取效率。B igTable 管理的数据的存储结构为 :
< row: string, column: string, time: int64 〉 — > string.B igTable
的基本元素是:行 ,列 ,记录板和时间戳。其中 ,记录板是一段行的集合体。如图 2所示。
图 2 B igTable的逻辑结构
B igTable中的数据项按照行关键字的字典序排列 ,每行
动态地划分到记录板中.每个节点管理大约 100 个记录板。
时间戳是一个 64位的整数 ,表示数据的不同版本。列族是若
干列的集合 , B igTable中的存取权限控制在列族的粒度进行。
B igTable在执行时需要三个主要的组件: 链接到每个客
户端的库 ,一个主服务器 ,多个记录板服务器。主服务器用于分配记录板到记录板服务器以及负载平衡 ,垃圾回收等。记
录板服务器用于直接管理一组记录板 ,处理读写请求等。
为保证数据结构的高可扩展性 , B igTable 采用三级的层次化的方式来存储位置信息 ,如图 3所示 [ 11 ] 。
其中第一级的 Chubby file 中包含 Root Tablet的位置 ,
Root Tablet有且仅有一个 ,包含所有 M ETADATA tablets的位置信息 ,每个 M ETADATA tablets包含许多 U ser Table的位置信息。
图 3 B igTable中存储记录板位置信息的结构
当客户端读取数据时 , 首先从 Chubby file 中获取 Root
Tablet的位置 ,并从中读取相应 M ETADATA tablet的位置信
息。接着从该 M ETADATA tablet中读取包含目标数据位置信
息的 U ser Table的位置 ,然后从该 U ser Table中读取目标数据的位置信息项。据此信息到服务器中特定位置读取数据。具
体见文献 [ 11 ]。
这种数据管理技术虽然已经投入使用 ,但是仍然具有部
分缺点。例如 ,对类似数据库中的 Join操作效率太低 ,表内数据如何切分存储 , 数据类型限定为 string类型过于简单等.而微软的 D ryadL INQ 系统 [ 20 ] 则将操作的对象封装为. NET
类 ,这样有利于对数据进行各种操作 ,同时对 Join 进行了优化 ,得到了比 B igTable + M apReduce 更快的 Join 速率和更易用的数据操作方式。
第 9期 陈全等:云计算及其关键技术 2565
2。 3 编程模型
为了使用户能更轻松地享受云计算带来的服务 ,让用户
能利用该编程模型编写简单的程序来实现特定的目的 ,云计算上的编程模型必须十分简单。必须保证后台复杂的并行执行和任务调度向用户和编程人员透明。
云计算大部分采用 M ap Reduce[ 12 ]的编程模式。现在大
部分 IT厂商提出的“云 "计划中采用的编程模型 ,都是基于
2
2
2
2
M ap Reduce的思想开发的编程工具。
M ap Reduce不仅仅是一种编程模型 ,同时也是一种高效
的任务调度模型.M ap Reduce 这种编程模型并不仅适用于云计算 ,在多核和多处理器、cell p rocessor以及异构机群上同样有良好的性能 [ 24 - 27 ] 。
该编程模式仅适用于编写任务内部松耦合、能够高度并
行化的程序。如何改进该编程模式 ,使程序员得能够轻松地
编写紧耦合的程序 , 运行时能高效地调度和执行任务 , 是 M ap 2Reduce编程模型未来的发展方向。
M ap 2Reduce是一种处理和产生大规模数据集的编程模
型 ,程序员在 M ap 函数中指定对各分块数据的处理过程 ,在
Reduce函数中指定如何对分块数据处理的中间结果进行归
约.用户只需要指定 map 和 reduce 函数来编写分布式的并行程序。当在集群上运行 M ap 2Reduce程序时 ,程序员不需要关心如何将输入的数据分块、分配和调度 ,同时系统还将处理集群内节点失败以及节点间通信的管理等。图 4[ 15 ] 给出了一个 M ap 2Reduce程序的具体执行过程。
图 4 Map 2Reduce程序的具体执行过程
从图 4可以看出 ,执行一个 M ap 2Reduce程序需要五个步骤:输入文件、将文件分配给多个 worker并行地执行、写中间文件 (本地写 ) 、多个 Reduce workers同时运行、输出最终结果。本地写中间文件在减少了对网络带宽的压力同时减少了
写中间文件的时间耗费.执行 Reduce时 ,根据从 M aster获得
的中间文件位置信息 , Reduce 使用远程过程调用 ,从中间文件所在节点读取所需的数据.
M ap 2Reduce模型具有很强的容错性 ,当 worker节点出现
错误时 ,只需要将该 worker节点屏蔽在系统外等待修复 ,并
将该 worker上执行的程序迁移到其他 worker上重新执行 ,同
时将该迁移信息通过 M aster发送给需要该节点处理结果的节点。M ap 2Reduce使用检查点的方式来处理 M aster出错失败的问题 ,当 M aster出现错误时 ,可以根据最近的一个检查点重新选择一个节点作为 M aster并由此检查点位置继续运
行。具体请见文献 [ 12 ].
M ap 2Reduce 仅为编程模式的一种 , 微软提出的
D ryadL INQ [ 17 ]是另外一种并行编程模式。但它局限于。 NET
的 L INQ 系统同时并不开源 ,限制了它的发展前景。
M ap 2Reduce作为一种较为流行的云计算编程模型 ,在云计算系统中应用广阔。但是基于它的开发工具 Hadoop 并不
完善.特别是其调度算法过于简单 ,判断需要进行推测执行的任务的算法造成过多任务需要推测执行 ,降低了整个系统的性能。改进 M ap 2Reduce的开发工具 ,包括任务调度器、底层数据存储系统、输入数据切分、监控“云 "系统等方面是将来一段时间的主要发展方向.另外 ,将 M ap 2Reduce的思想运用在云计算以外的其他方面也是一个流行的研究方向。
3 云计算和其他超级计算的区别
3. 1 云计算与网格计算的区别
Ian Foster将网格定义为 :支持在动态变化的分布式虚拟
组织 (V irtual O rganizations) 间共享资源 , 协同解决问题的系
统 [ 28 ] 。所谓虚拟组织就是一些个人、组织或资源的动态组合。
图 5和图 6分别为云及网格的结构示意图。图 5 显示 ,
云计算是一种生产者 -消费者模型 ,云计算系统采用以太网等快速网络将若干集群连接在一起 ,用户通过因特网获取云计算系统提供的各种数据处理服务。图 6 显示 ,网格系统是
一种资源共享模型 ,资源提供者亦可以成为资源消费者 ,网格侧重研究的是如何将分散的资源组合成动态虚拟组织。主要
区别如表 4所示。
云计算和网格计算 [ 29 ]的一个重要区别在于资源调度模式。云计算采用集群来存储和管理数据资源 ,运行的任务以数据为中心。即调度计算任务到数据存储节点运行.而网格
计算 ,则以计算为中心。计算资源和存储资源分布在因特网的各个角落 ,不强调任务所需的计算和存储资源同处一地.由于网络带宽的限制 ,网格计算中的数据传输时间占总运行时间的很大一部分。
网格将数据和计算资源虚拟化 ,而云计算则进一步将硬
2566 计算机应用 第 29卷
件资源虚拟化 ,活用虚拟机技术 ,对失败任务重新执行 ,而不必重启任务。同时 ,网格内各节点采用统一的操作系统 (大
部分为 UN IX) ,而云计算放宽了条件 ,在各种操作系统的虚拟机上提供各种服务。和网格的复杂管理方式不同 ,云计算
提供一种简单易用的管理环境.另外 ,网格和云在付费方式上有着显著的不同。网格按照固定的资费标准收费或者若干组织之间共享空闲资源.而云则采用用时付费以及服务等级协议的模式收费.其他区别不再赘述。
表 4 网格计算和云计算的主要区别
区别点
网格计算
云计算
发起者
学术界
工业界
标准化
是 (OGSA )
否
开源
是
部分开源
互联网络
因特网 ,高延时低带宽
高速网络 ,低延时高带宽
关注点
计算密集型
数据密集型
节点
分散的 PC或服务器
集群
获取的对象
共享的资源
提供的服务
安全保证
公私钥技术 ,
每个任务一个虚拟机 ,
账户技术
保证隔离性
节点操作系统
相同的系统 (UN IX)
多种操作系统上的虚拟机
虚拟化
虚拟数据和计算资源
虚拟软硬件平台
节点管理方式
分散式管理
集中式管理
易用性
难以管理 ,使用
用户友好
付费方式
/
用时付费
失败管理
失败的任务重启
虚拟机迁移到其他
节点继续执行
对第三方插件
难以兼容
易于兼容 ,通过提供
的兼容性
不同的服务来兼容
自我管理方式
重新配置
重新配置 ,自我修复
3。 2 云计算系统与传统超级计算机的区别
超级计算机拥有强大的处理能力 , 特别是计算能力.
2008年 11月 17 日 ,最新一期的 Top500[ 30 ] 榜单发布。冠军“RoadRunner”是 IBM 为美国 Los A lamos国家实验室建造的计算机系统。它的运算速度达到了 1. 026 PFLOTP。
RoadRuner超级计算机包含 12 960 个 IBM PowerXcell 8 i处理
器以及 6 948 个分布于刀片服务器上的 AMD Op teron 芯片。刀片服务器安装在 288个 IBM B ladCener机架上.RoadRuner
拥有 80 TB 的内存 ,外存使用 1。 5 PB 容量的 Panasas存储 ,外
存通过 10 GbTP的以太网进行连接.耗资超过 1亿美元。
从 TOP500 对超级计算机的排名方式可以看出 ,传统的超级计算机注重运算速度和任务的吞吐率.以运算速度为核
心进行计算机的研究和开发。而云计算则以数据为中心 ,同
时兼顾系统的运算速度。传统的超级计算机耗资巨大 ,远超
云计算系统。例如 ,趋势科技花费 1 000多万美元租用 34 000
多台服务器 ,构建自身的“安全云 ”系统。
4 结语
云计算具有广阔的发展前景 ,相关的各项关键技术也在迅速发展。
首先 ,当前的云计算系统的能耗过大 ,因此 ,减少能耗 ,提
高能源的使用效率 ,建造高效的冷却系统是当前面临的一个
主要问题.例如 ,谷歌的数据中心的能耗相当于一个小型城市的总能耗 [ 31 ] .因为 ,过大的能耗使得数据中心内发热量剧
增 ,要保证云计算系统的正常运行 ,必须使用高效的冷却系统来保持数据中心在可接受的温度范围内.
其次 ,云计算对面向市场的资源管理方式的支持有限.可以加强相应的服务等级协议 ,使用户和服务提供者能更好的协商提供的服务质量。
另外 ,需要对云计算的接口进行标准化并且制定交互协议.这样可以支持不同云计算服务提供者之间进行交互 ,相
互合作提供更加强大和更好的服务.
再者 ,需要开发出更易用的编程环境和编程工具 ,这样可以更加方便地创建云计算应用 ,拓展云计算的应用领域。
最后 ,虽然云计算还有很多问题需要解决 ,但是云计算必将得到更大的发展.
参考文献:
[1 ]
VAR IA J。
Cloud architectures — Amazon W eb
services [ EB /OL ]。
[2009 —
03 —
01 ]。
http: / / acmbangalore。 org / events/monthly talk /
2
22
2
222
2
2
may 2008
cloud architectures
amazon web services。 htm l.
[2 ]
BRYANT R E。 Data intensive supercomputing: The case for D ISC,
2
2
2
2
CMU CS 07 128 [R ]. Pittsburgh, PA , USA: Carnegie Mellon Uni
versity, Department of Computer Science,
2007。
2
[ 3 ]
SZALAY A S, KUNSZT P, THAKAR A ,
et a l。
Designing and m in
2
2
;
ing multi terabyte astronomy archives:
The sloan digital sky survey
[C ] / / Proceedings of the 2000 ACM SIGMOD
International Confer
ence on Management of Data。 New York: ACM Press, 2000:
451 -
462。
[4 ]
BARROSO L A , DEAN J,
H
LZLE U。 W eb search for a p lanet:
The Google cluster architecture [J ]. IEEE M icro, 2003, 23 (2 ) : 22
- 28。
[5 ]
GILES J.
Google toTP translation ranking [ EB /OL ]. (2006 - 11 -
06 ) [ 2009
—
03 —
06 ].
http: / /www。
nature. com / news/2006 /
2
2
2
2
061106 / full/ new s061106 6。 htm l.
[6 ]
维基百科。 Cloud computing [ EB /OL ].
[2009 - 03 — 10 ].
http: / /
en。 wikipedia。 org/wiki/Cloud_computing.
[7 ]
中国云计算网. 什么是云计算 ? [ EB /OL ].
(2008 — 05 — 14 )
[2009 — 02 — 27 ]。
http: / /www. cloudcomputing china. cn /A rticle /
ShowA rticle。 asp?A rticle ID = 1.
[8 ]
VAQUERO L M , RODERO MER INO L , CACERES J, et
a l. A
break in the
clouds:
Towards a cloud
definition [ J ]。 ACM
SIG
COMM Computer Communication Review,
2009, 39 (1) : 50 - 55。
[9 ]
W E ISS A。
Computing in the clouds [ J ]。
ACM Networker,
2007,
11 (4) : 16 — 25.
[10 ]
GR IFF ITHS A , METHERALL G. Cluster interconnection networks
[ EB /OL ].
(2000 — 09 — 01 ) [2009 - 03 - 03 ]。 http: / /www。 grid
2
bus。 org/ ~raj/ csc433 /ClusterNets。 pdf.
2
[11 ]
CHANG F, DEAN J, GHEMAWAT S, et a l.
B igTable: A distrib
uted storage system for structured data
[ J ]。 ACM Transactions on
Computer System s,
2008, 26 (2 ) : 1 - 26.
[12 ]
DEAN J,
GHEMAWAT S。 MapReduce: Simp lied data p rocessing
p
2
on large clusters [C ] / / OSD I04: Proceedings of the 6 th Symposi
um on Operating System Design and
Imp lementation. New York:
ACM Press,
2004:
137 - 150。
2
[13 ]
NAGARAJAN A B , MUELLER F, ENGELMANN C, et a l。
Proac
2
tive fault tolerance for HPC with Xen virtualization [C ] / / Proceed
2
ings of the 21 st Annual International Conference on Supercomput
ing。 New York: ACM Press,
2007: 23 - 32.
2
[14 ]
GHEMAWAT S, GOB IOFF H, LEUNG P T。
展开阅读全文