1、云计算技术综述摘要:云计算是“以互联网为载体,利用虚拟化等手段整合大规模分布式可配置的计算资源。使其以服务的方式提供给用户,满足用户按需使用的计算模式” ,然后从计算模式、科学研究、社会发展等多个维度阐明了云计算作为现代计算技术发展的必然产物所具备的发展意义,总结了国内外产业界、学术界、政府机构等在云计算方面的最新研究进展,深入分析了云计算研究过程中的重点和难点,最后指出了云计算未来的发展趋势。关键词:云计算;虚拟化;海量数据处理引言所谓云计算,简单地说就是以虚拟化技术为基础,以网络为载体,以用户为主体为其提供基础架构“平台“软件等服务为形式,整合大规模可扩展的计算“存储“ 数据“应用等分布式
2、计算资源进行协同工作的超级计算服务模式虚拟化为云计算实现提供了很好技术支撑,而云计算可以看作是虚拟化技术应用的成果。在过去的几年里,已经出现了众多云计算研究开发小组,如谷歌、微软、亚马逊、华为、百度、阿里巴巴、中国电信等知名 IT 企业纷纷推出云计算解决方案,同时,国内外学术界也纷纷就云计算及其关键技术相关理论进行了深层次的研究。本文力图在对各种云计算定义综合分析的基础上,提出 1 个相对系统和综合的参考性定义,挖掘云计算的技术本质和发展意义,总结国内外最新研究进展,剖析研究过程中的重点和难点,指出未来的发展趋势。1、云计算的内涵和本质目前关于云计算的定义已有上百种而维基百科对云计算的定义也在
3、不断更新,前后版本的差别非常大。据 2011 年给出的最新定义:云计算是一种能够将动态易扩展的虚拟化资源软件和数据通过互联网提供给用户的计算方式,如同电网用电一样,用户不需要知道云内部的细节,也不必具有管理那些支持云计算的基础设施。伯克利云计算白皮书的定义:云计算包括互联网上各种服务形式的应用以及数据中心中提供这些服务的软硬件设施。应用服务即 Saas,而数据中心的软硬件设施即所谓的云。通过量入为出的方式提供给公众的云称为公共云,而不对公众开放的组织内部数据中心的云称为私有云。美国标准化技术机构 NIST 定义云计算是一种资源利用模式,它能以方便、友好、按需访问的方式通过网络访问可配置的计算机
4、资源池(例如网络、服务器 “存储、应用程序和服务),在这种模式中,可以快速供应并以最小的管理代价提供服务。Sun 公司认为,云的类型有很多,而且有很多不同的应用程序可以使用云来构建,由于云计算有助于提高应用程序部署速度,有助于加快创新步伐,因而云计算可能还会初心在我们现在无法想象到的形式。笔者认为:云计算是一种大规模资源共享模型,它是以虚拟技术为核心技术,以规模经济为驱动,以 Internet 为载体,以用户为主体,按照用户需求动态地提供虚拟化的、可伸缩性的商业计算模型。云计算是一种服务模式而不单纯是一种技术。在云计算模式下,不同种类的 IT 服务按照用户的需求规模和要求动态的构建、运营和维护
5、,用户一般以即用即付的方式支付其利用资源的费用。网络中的应用服务通常被称作 SaaS,二数据中心软硬件设施即资源池也就是所谓的云。 “云”是一些可以自我维护和管理的虚拟计算资源,通常是一些大型服务器集群,包括计算服务器、存储服务和宽带资源等。总之,云计算是一种方便的使用方式和服务模式,通过互联网按需访问资源池模型(例如网络、服 务器、存储、应用程序和服务) ,可以快速和最少的管 理工作为用户提供服务.云计算是并行计算(parallel computing)、分布式计算 (distributed computing)和网 格计算(grid computing)等技术的发展.云计算又是 虚拟化(v
6、irtualization) 、效用计算(utility computing) 的商业计算模型,它由基础设施即服务、平台即服务和软件即服务 3 种服务模式,公共云、私有云、社区云、混合云 4 种部署模式。云计算的 5 个基本特点为:按需自助式服务、广泛的网络访问、资源池、快速弹性使用、可度量的服务。2、 云计算的关键技术云计算作为一种新的超级计算方式和服务模式,以数据为中心,是一种数据密集型的超级计算 .它运用了多种计算机技术,其中以编程模型、数据管理、数据存储、虚拟化和云计算平台管理等技术最为关键.下面分别介绍云计算的一些关键技术。2.1 编程模型MapReduce 作为 Google 开发
7、的 Java、Python 、C+编程模型,是一种简化的分布式编程和高 效的任务调度模型,应用程序编写人员只需将精力 放在应用程序本身,使云计算环境下的编程十分简 单.而关于集群的处理问题,包括可靠性和可扩展性,则交由平台来处理 MMapReduce 模式的思想 是通过“Map(映射) ”和 “Reduce(化简) ”这样 2 个简单的概念来构成运算基本单元,先通过 Map 程序将数据切割成不相关的区块,分配(调度)给大量计算机处理,达到分布式运算的效果,再通过 Reduce 程序将结果汇整输出,即可并行处理海量数据。简单地说,云计算是一种 更加灵活、高效、低成本、节能的信息运作的全新方 式,
8、通过其编程模型可以发现云计算技术是通过网络将庞大的计算处理程序自动分拆成无数个较小 的子程序,再由多部服务器所组成的庞大系统搜 索、计算分析之后将处理结果回传给用户.通过这 项技术 ,远程的服务供应商可以在数秒之内,达成 处理数以千万计甚至亿计的信息,达到和“超级电脑”同样强大性能的网络服务。2.2 海量数据分布存储技术云计算系统采用分布式存储的方式存储数据,用冗余存储的方式保证数据的可靠性.云计算系统中广泛使用的数据存储系统是 Google 的 GFS 和 Hadoop 团队开发的 GFS 的开源实现 HDFSGFS 即 Google 文件系统(Google File System),是个可
9、扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用 GFS 的设计思想 不同于传统的文件系统,是针对大规模数据处理和 Google 应用特性而设计的.它虽然运行于廉价的普 通硬件上,但可以提供容错功能.它可以给大量的 用户提供总体性能较高的服务 .一个 GFS 集群由 1 个主服务器(master)和大量的块服务器(chunks- erver)构成,并被许多客户( client)访问 111 .主服务 器存储文件系统所有的元数据,包括名字空间、访 问控制信息、从文件到块的映射以及块的当前位 置.它还控制系统活动范围,如块租约(lease)管 理,孤立块的垃圾收集,块服务器间的
10、块迁移.主服 务器定期通过心跳(HeartBeat) 消息与每一个块服 务器通信,并收集它们的状态信息。2.3 海量数据管理技术海量数据管理是指对大规模数据的计算、分析 和处理,如各种搜索引擎.以互联网为计算平台的云计算能够对分布的、海量的数据进行有效可靠地 处理和分析.因此,数据管理技术必需能够高效地 管理大量的数据,通常数据规模达 TB 甚至 PB 级. 云计算系统中的数据管理技术主要是 Google 的 BT (BigTable)数据管理技术,以及 Hadoop 团队开发 的开源数据管理模块 HBase 和 Hive,作为基于 Ha- doop 的开源数据工具(http: # appen
11、gine. google. com),主要用于存储和处理海量结构化数据.BT 是建立在 GFS,Scheduler,LockService 和 MapReduce 的一个大型的分布式数据库,与传统的 关系数据库不同,它把所有数据都作为对象来处理,形成一个巨大的表格,用来分布存储大规模结 构化数据。Google 的很多项目使用 BT 来存储数据,包括网页查询,Google Earth 和 Google 金融.这些应用程 序对 BT 的要求各不相同:数据大小(从 URL 到网页到卫星图像)不同,反应速度不同(从后端的大批处理到实时数据服务) 。对于不同的要求,BT 都成功地提供了灵活高效的服务。2
12、. 4 虚拟化技术虚拟化(virtualization)技术是云计算系统的核心 组成部分之是将各种计算及存储资源充分整合和 高效利用的关键技术.云计算的特征主要体现在虚拟 化、分布式和动态可扩展,而虚拟化作为云计算最主 要的特点,为云计算环境搭建起着决定性作用.虚拟 化技术是伴随着计算机技术的产生而出现的, 作为云 计算的核心技术,扮演着十分重要的角色,提供了全 新的数据中心部署和管理方式, 为数据中心管理员带 来了高效和可靠的管理体验,还可以提高数据中心的 资源利用率,低功能绿色环保。通过虚拟化技术,云计算中每一个应用部署的环境和物理平台是没有关 系的,通过虚拟平台进行管理、扩展、迁移、备份
13、,种种 操作都通过虚拟化层次完成.虚拟化技术实质是实现 软件应用与底层硬件相隔离,把物理资源转变为逻辑 可管理资源 E344.目前云计算中虚拟化技术主要包括 将单个资源划分成多个虚拟资源的裂分模式,也包括将多个资源整合成一个虚拟资源的聚合模式.虚拟化技术根据对象可分成存储虚拟化、计算虚拟化、网络虚拟化等,计算虚拟化又分为系统级虚拟化、应用级 虚拟化和桌面虚拟化。2.5 云计算平台管理技术云计算资源规模庞大,一个系统服务器数量众多(可能高达 10 万台) 、结构不同并且分布在不同物 理地点的数据中心,同时还运行着成千上万种应用。如何有效地管理云环境中的这些服务器,保证整个系统提供不间断服务必然是
14、一个巨大的挑战.云计算平台管理系统可以看作是云计算的“指挥中心”通过云计算系统的平台管理技术能够使大量的服务器协同工作,方便地进行业务部署和开通,快速发现和恢复系统故障,通过自动化、智能化的手段实现大规模系统的可靠运营和管理。3 云计算应用现状云计算平台是一个强大的“云”网络,连接了大 量并发的网络计算和服务,可利用虚拟化技术扩展 每一个服务器的能力,将各自的资源通过云计算平 台结合起来,提供超级计算和存储能力.下面就当前 云计算相关主要研究团队和组织的研究进展情况进 行对比分析,为云计算相关研究提供参考.3.1 国际上相关研究组织目前,国外已经有多个云计算的科学研究项目,非常有名是 Scie
15、ntific Cloud16 和 Open Nebula 项目.产业界也在投入巨资部 署各自的云计算系统,参与者主要有Google、 Ama- zon、IBM、Microsoft 等.国内关于云计算的研究也已 起步,并在计算机系统虚拟化基础理论与方法研究 方面取得了阶段性成果.国际上云计算主要研究组 织及研发方向如表 1 所示.团 队 组 织 商 业 项 目 技 术 特 征 核 心 技 术 适 用 范 围Google App Engine,包 括 Google 搜 索 、 平 行 分 散 技 术 , Google 各 种 日 常 互 联 网 应 用 及Google Google Maps、Go
16、ogle Earth、Google Ad- MapReduce, 开 发 者 开 发 和 发 布 各 种 应 用sense、 Gmail 等储 存 及 运 算 水 平 扩 充 能 力 BigTable, GFS 程 序蓝 云 ” IBM 云 环 境 管 理 解 决 方 案 ( 企IBM业 私 有 云 ) ,IBM LotusLive (会 议 服 务 、 办 公 协 作 月 艮 务 、电 子 邮 件 服 务 ) ,IBMRC2 (IBM8 大 研 究 机 构 共 同 创 建 的 私 有云 )整 合 其 所 有 软 件 和 硬 件 服 务网 格 技 术 , 分 布 式 存 储 , 动 态 负 载
17、高 性 能 计 算 ( 汽 车 和 航 天 工 业 模拟 计 算 、 生 命 科 学 领 域 染 色 体 组建 模 等 )Amazon亚 马 逊 网 络 服 务 ( 弹 性 计 算 云 EC2、 简 单存 储 服 务 S3、 简 单 数 据 库 服 务 sim- pleDB、简 单 队 歹 IJ 服 务 SQS、 弹 性 MapRe- duce 服务 、 内 容 推 送 服 务 、 电 子 商 务 服 务 DevPay 和 FPS)弹 性 虚 拟 平 台 虚 拟 技 术 Xen各 类 企 业 在 其 平 台 上 搭 建 应 用 环境 提 供 云 计 算 服 务 t 如 在 线 照 片存 储 共
18、 享 网 站 SmugMug、 在 线 视频 制 作 网 站 Animoto)应 用 程 序 开 发 者 在 云 端 开 发 程Azure 平 台 提 供 Microsoft .NET 服 务 、 整 合 其 所 有 软 件 及 大 型 应 用 软 件 开 发 序 , 且 运 行 在 微 软 云 端 的 应 用MicrosoftMicrosoft SQL 服 务 、Live 服 务 数 据 服 务 技 术 程 序 还 是 运 行 在 本 地 的 应 用 程 序都 可 以 使 用 云 计 算 服 务 平 台EMC 云 存 储 基 础 架 构 EMC Atoms (PB 级 的 信 息管 理 解
19、决 方 案 ) ,Mozy 针 对 Mac 用 户 的 在 线 存 储信 息 存 储 系 统 和 虚 拟 化Vmware 的 虚 拟 化 技 术 , 一 流 的 存 储 技 术向 各 种 规 模 的 企 业 和 机 构 提 供 自动 化 网 络 存 储 解 决 方 案客 户 关 系 管 理 ( CRM)包 括 Sales Cloud、Salesforce Service Cloud、 Custom Cloud、 Cloud Plat-form for CRM、 Cloud Infrastructure 弹 性 可 定 制 商 务 软 件 应 用 平 台 整 合 技 术 为 企 业 提 供 客
20、户 关 系 管 理(CRM)服 务for CRM提 供 统 一 整 合 的 界 面 来 部 署 在EC2 上 的 Oracle 数 据 库 , 软 硬 件 弹 性 虚 拟 Oracle 的 数 据 存 储云 中 任 何 操 作 系 统 上 运 行 的 应OracleOracleVM, SunxVM 平 台 技 术 , Sun 开 源 技 术 用 软 件 , 操 作 系 统 包 括 Open Solaris、 Linux、Windows3.2 国内相关研究组织中国移动大云平台包括数据挖掘、海量数据存 储和弹性计算等,主要用于中国移动的业务支撑、信 息管理和互联网应用;阿里云提供的计算、存储和网
21、络服务主要用于提供各种电子商务服务;世纪互联 的弹性云计算已经对外提供服务,支持多个操作系 统、数据库和编程环境;友友云开发的数流平台 (Bitsflow),分布式虚拟存储系统(DataCell),网络计 算平台 GAP 和系统监控管理平台(NetVM)主要针 对大型企业;华为的云帆计划主要包括云数据中心 和针对电信的 IDC 云。在平台的文件系统方面,中国移动,阿里巴巴和 世纪互联都是基于 Hadoop 文件系统 HDFS,根据自 身需求进行一些改进,而友友提出的DataCell FS。4 云计算存在的挑战与机遇目前,尽管云计算如火如荼的开展着,通过分析 知道云计算具有许多优点,让人们看到了
22、 IT 服务将 成为公共服务的曙光,但是我们也要清醒地认识到 云计算也不是万能的灵丹妙药,它仍存在着一些亟 待解决的实际问题, 如服务可用性、数据主权与数据 隐私问题、安全问题、软件许可证问题、网络传输问 题和可伸缩性存储等 .甚至还有_ 些专家和学者对 云计算持怀疑态度,认为是在炒作概念.为此,需要 进一步加强宣传和应用好云计算产品,为科研生产 服务.本文给出了云计算发展过程中主要存在的一些挑战问题与机遇。5 总结与展望计算作为一项服务功能是人们长久以来的梦 想.随着微软吸引人眼球的 _句广告语“We are all in cloud! ”标志着云计算时代的到来,人们长久以 来的梦想终将变为
23、现实.从云供应商的观点出发,整 合服务器平台技术能更好地推进云计算基础设施架 构的搭建以及大规模数据中心管理能力的提升,建 立合作伙伴的生态链.利用商品化的计算、存储和网 络低成本建立大型数据中心使得以低于许多中等规 模的数据中心的价格“即用即付”的销售资源成为可能,并且可以利用资源在大量用户间的复用来获取 利润.从云用户的观点出发,云计算可以令一个初创 的软件公司像初创的芯片厂商拥有为之服务的代工 厂_样拥有自己的数据中心.总之,国内外对云计算及其虚拟化关键技术方 面的研究非常活跃,并开发了一些相关工具与产品, 云计算作为新 一代产业浪潮的重要驱动力,将对经 济社会发展产生深远的影响。参考文
24、献1Mell P, Grance T. The NIST definition of cloud computingR . National Institute of Stadard and Technology, U S Department of Commerce, 20102 Sun Corporation. The white paper on cloud computing architecture R . 20093刘 鹏 .云 计 算 技 术 基 础 M .2 版 .北 京 : 电 子 工 业 出 版 社 ,011LIU Peng. Introduction to cloud c
25、omputing M . 2nd Ed.Beijng! Publishing House of Electronics Industry, 20114Dean J, Ghemawat S. MapReduce: Simplified data processing on large clusters J .Communications of the ACM,2008,51 (1):1074135王 庆 波 , 金 滓 , 何 乐 , 等 .虚 拟 化 与 云 计 算 M.北 京 : 电 子 工 业 出 版 社 ,010WANG Qingbo, JIN Xing, HE Le, et al. V
26、irtualization and cloud computing M . Beijng: Publishing House of Electronics Industry, 20106VMware virtualization technology EB/OL 2011-0902 . http: / www. vmware. cm/virtualization/what-s-vir- tualization. html10 Goyal A, Dadizadeh S. A survey on cloud computing R . Technical Report for CS 508,200
27、9 11 王鹏.云计算的关键技术与应用实例 M .北京:人民邮电出版社,010 WANG Peng. Key technology and application examples of cloud computing M . Beijing: Posts & Telecom Press, 201012陈 康 ,郑 纬 民 .云 计 算 :系 统 实 例 与 研 究 现 状 J.软 件 学 报 ,009,0(5):13374348 CHEN Kang, ZHENG Weimin. Cloud computing! System instances and current research J
28、. Journal of Software,2009,20 (5): 1337434813Kamoun F. Virtualizing the datacenter without compromising server performance J .ACM Ubiquity 2009/ 2009.14Leavitt N. Is cloud computing really ready for prime time? J . Computer, 2009,2 (1)154015Vaquero L M, Rodero-Merino L, Caceres J, et al. A break in
29、the clouds:Toward a cloud definition J . ACM SIG- COMM Computer Communication Review, 2009,9 (1): 50-5516Lagar-Cavilla H A, Whitney J A, Scannel A, et al. Snow- Flock I Rapid virtual machine cloning for cloud computingC / Proceedings of the 4th ACM European Conference on Computer Systems, 2009: 1-1217李亚琼,宋莹,黄永兵. 一种面向虚拟化云计算平台的 内存优化技术 J .计算机学报,2011,34 :684 卻 3 LI Yaqiong, SONG Ying, HUANG Yongbing. A memory global optimization approach in virtualized cloud computing environments J . Chinese Journal of Computers,2011,34 (4) :684-693.