云计算的应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浅析云计算的应用
李精华
(中国传媒大学信息工程学院北京100024)
摘要:云计算作为一种新的服务模式已成为计算机科学领域的一个研究热点,其快速发展预示着该技术可以带来美好的应用前景和更多的经济收益。本文首先简要回顾云计算的发展,其次介绍了云计算的概念,最后着重阐述了云计算的关键技术及其应用的几个方面。
关键词:云计算;关键技术;应用;
1 引言
近几年,IT技术与互联网的发展影响了整个产业的格局,带来了全新、鲜活的业务模式变革。面对这些变革,全球IT 产业正在经历着一场声势浩大的“云计算”浪潮。云计算和移动化是互联网的两大发展趋势。云计算为移动互联网的发展注入了动力,它是商业模式的创新,主要实现形式包括SaaS、PaaS 和IaaS。
信息技术(IT)成为引领经济增长和社会进步的关键因素与主要动力之一。互联网是IT 中最为重要的一项发明和最为活跃的一个领域,它最常用的表示方法恰恰就是“云”。《商业周刊》的评论文章指出,云计算的出现使得人们可以直接通过网络应用获取软件和计算能力,这一模式将会给传统的IT 业带来一场巨大的变革,云计算正在成为IT 业的一种发展趋势。尽管云计算的定义和范围尚无一致的结论,但是它正在逐渐向人们的工作和生活进行渗透的事实则是毋庸置疑的。在未来的日子里,云计算将会带给世界更多的改变。
2云计算的概述
2.1云计算的提出
云计算(Cloud Computing)这个概念的直接起源是亚马逊ECC(Elastic Compute Cloud 的缩写)产品和Google-IBM分布式计算项目。这两个项目直接使用到了“Cloud Computing”这个概念。之所以采用这样的表述形式,很大程度上是由于这两个项目与网络的关系十分密切,而“云”的形象又常常用来表示互联网。因此,云计算的原始定义即为将计算能力放到互联网上。当然,云计算发展至今,早已超越了原始的概念。
2.2云计算的概念
云计算至今为止没有统一的定义,不同的组织从不同的角度给出了不同的定义,根据不完全的统计至少有 25 种以上。例如,Gartner 认为,云计算是一种使用网络技术并由 IT 使能而具有可扩展性和弹性能力作为服务提供给多个外部用户的计算方式;美国国家标准与技术实验室对云计算的定义是:“云计算是一个提供便捷的通过互联网访问一个可定制的 IT 资源共享池能力的按使用量付费模式(IT 资源包括网络,服务器,存储,应用,服务),这些资源能够快速部署,并只需要很少的管理工作或很少的与服务供应商的交互”;等等。随着应用场景的变化和使能技术的发展,关于云计算的定义还在不断产生新的观点。云计算的本质主要体现在6个方面。
1.具有“作为服务”交付的能力;
2.以高度可扩展的弹性方式交付服务;
3.利用因特网技术和方法来开发和交付服务;
4.资源虚拟化及资源的自动管理与配置;
5.可实现海量数据的分布式并行处理。
3云计算的关键技术
云计算作为一种新的超级计算方式和服务模式,以数据为中心,是一种数据密集型的超级计算。它运用了多种计算机技术,其中以编程模型、数据管理、数据存储、虚拟化和云计算平台管理等技术最为关键。下面分别介绍云计算的一些关键技术。
3.1编程模型
MapReduce 作为Google 开发的Java、Python、C + + 编程模型,是一种简化的分布式编程和高效的任务调度模型,应用程序编写人员只需将精力放在应用程序本身,使云计算环境下的编程十分简单。而关于集群的处理问题,包括可靠性和可扩展性,则交由平台来处理。MapReduce 模式的思想是通过“Map( 映射) ”和“Reduce( 化简) ”这样2个简单的概念来构成运算基本单元,先通过Map 程序将数据切割成不相关的区块,分配( 调度) 给大量计算机处理,达到分布式运算的效果,再通过Reduce 程序将结果汇整输出,即可并行处理海量数简单地说,云计算是一种更加灵活、高效、低成本、节能的信息运作的全新方式,通过其编程模型可以发现云计算技术是通过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再由多部服务器所组成的庞大系统搜索、计算分析之后将处理结果回传给用户。通过这项技术,远程的服务供应商可以在数秒之内,达成处理数以千万计甚亿计的信息,达到和“超级电脑”同样强大性能的网络服务。
3.2海量数据分布存储技术
云计算系统采用分布式存储的方式存储数据,用冗余存储的方式保证数据的可靠性。云计算系统中广泛使用的数据存储系统是Google 的GFS 和Hadoop 团队开发的GFS 的开源实现HDFS。GFS 即Google 文件系统( Google File System),是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。GFS 的设计思想不同于传统的文件系统,是针对大规模数据处理和Google应用特性而设计的。它虽然运行于廉价的普通硬件上,但可以提供容错功能。它可以给大量的用户提供总体性能较高的服务。一个GFS 集群由一个主服务器( master) 和大量的块服务器( chunkserver)构成,并被许多客户( client) 访问。主服务器存储文件系统所有的元数据,包括名字空间、访问控制信息、从文件到块的映射以及块的当前位置。它还控制系统活动范围,如块租约( lease) 管理,孤立块的垃圾收集,块服务器间的块迁移。主服务器定期通过心跳( HeartBeat) 消息与每一个块服务器通信,并收集它们的状态信息。
3.3海量数据管理技术
海量数据管理是指对大规模数据的计算、分析和处理,如各种搜索引擎。以互联网为计算平台的云计算能够对分布的、海量的数据进行有效可靠地处理和分析。因此,数据管理技术必需能够高效地管理大量的数据,通常数据规模达TB 甚至PB 级。云计算系统中的数据管理技术主要是Google 的BT( BigTable)数据管理技术,以及Hadoop 团队开发的开源数据管理模块HBase 和Hive,作为基于Hadoop的开源数据工具( http: ∥appengine. google.com) ,主要用于存储和处理海量结构化数据。BT是建立在GFS,Scheduler,Lock Service 和MapReduce之上的一个大型的分布式数据库,与传统的关系数据库不同,它把所有数据都作为对象来处理,形成一个巨大的表格,用来分布存储大规模结构化数据。