欢迎访问发表云网!为您提供杂志订阅、期刊投稿咨询服务!

云计算技术及应用大全11篇

时间:2023-08-17 17:42:29

云计算技术及应用

云计算技术及应用篇(1)

中图分类号:TP393 文献标识码:A

0. 引言

云计算技术是近些年新出现的应用技术,能够在网络技术的应用下,将软硬件系统加以整合成价值更高的分布式系统,从而来实现数据可靠性存储以及高效处理。在当前社会迅速发展背景下,加强对云计算技术的应用就比较重要。云计算技术在当前的电子商务以及IDC中心能方面都有着相应的应用,也发挥着积极的作用。

1. 云计算技术的内涵和主要特征

1.1 云计算技术的内涵分析

云计算技术主要是面向服务器方式来为用户提供计算资源的,是资源交付以及使用的重要模式。在对网络的应用下,从而获得需要的资源,在云当中的资源使用是能够进行无限扩展的,对云中的资源也能随时获得。用户在对云计算技术的应用中,只要能掌握应用的功能即可,结合自身对资源的需求在云计算技术下都能得到实现。

对云计算技术的统一性概念至今还没有形成,从诸多对云计算技术的定义综合来看,云计算主要是通过云加终端的技术模式。其中的云就是对网络的代称,而终端则是服务设备,云计算是将虚拟技术作为主要的服务模式的,所以云计算并非是孤立存在的,是通过多个方面进行综合形成的一个概念。云计算在具体的工作中是将服务形式对网络中用户进行提供必要计算机网络资源,在资源的丰富性要远远优于传统的计算机技术资源存储。云计算技术在当前的各个领域中都有着应用。

1.2 云计算平台的主要特征分析

云计算平台的特征体现得比较显著,对底层的软硬件实施细节进行了屏蔽,能够有效提供链接服务标准接口,这样就方便用户和网络进行连接实现资源的共享。在当前云计算平台的不断发展下,已经和云计算的技术框架相符合,由于实际应用不同,在平台类型方面也会有着一定的差距。例如综合性的云计算平台主要是提供上层服务资源的,在基础资源方面主要是提供网络服务的,而在虚拟化技术方面主要是提供基础资源的相关服务。

但是不管是哪种类型的云计算平台,体现出的特征都是比较显著的。

第一,在灵活性特征上比较鲜明,在需要的规模方面能够按照实际需求加以调整。在对虚拟技术的应用下,能够实现按需服务的目标,这样就能有效地降低云计算平台应用成本,对实际的需求也能有效地保障。在云计算平台的应用下,能够对数据的共享轻松地实现。

第二,云计算平台的应用特征还体现在应用时不用关心底层实现,只要能够对提供的接口加以调整即可完成工作,在平台的方便性特征上就比较突出。除此之外的数据安全可靠特征也比较鲜明,云计算的数据信息存储的安全性要能得到有效保证。

第三,云计算平台的另一特征就是高性能特征。由于云计算平台是大规模数据中心,在提供的服务方面也比较优越,在资源的利用上是无限量的。云计算为用户提供了诸多存储管理的数据控件,在计算能力方面也比较强大,这些功能就使得在应用过程中有着无限的资源。

2. 云计算的体系结构和应用优势分析

2.1 云计算的体系结构分析

从云计算的体系机构层面来看,云计算作为比较强大的云网络,将其和网络以及服务器相连接,就能在资源上得到无限扩大,在存储能力以及计算能力都是史无前例的。从云计算的体系结构层面来看,主要有几个重要的要素(如图1所示)。其中的云用户端是比较关键的。这是用户请求服务的交互界面,是对云使用的入口,通过浏览器进行注册然后登入和定制服务,然后对用户进行管理和配置。在管理系统和部署工具要素上,主要是提供管理服务的,然后对云用户实施管理,进行对用户授权和认证等。也能对可用计算资源进行管理,结合实际的请求来转发相应的应用程序,对资源的调动和部署按照实际加以实施。

另外,在云计算体系结构中的服务目录要素方面,主要是用户在获得了相应权限后,对服务列表进行选择以及定制。也能对定制的目录进行操作,这样就会在用户端的界面显示相应的图表以及服务的内容等。在监控结构方面主要是对系统资源使用情况的监控,对节点的同步设置以及资源的监控,按照资源能够合理地分配给用户。在服务器集群的结构要素方面,通过管理系统进行实际的管理,对一些计算实施高效的处理,在进行存储的时候对数据切割算法加以应用。

2.2 云计算技术的应用优势分析

云计算技术在实际中的应用中有着诸多的优势发挥,在具体的应用过程中,允许用户自定义资源使用的时间,这就对资源的闲置或者是过载问题的出现有了避免。并且在分布式处理以及并行式处理的特性上展现得比较显著,这就对数据处理需要的时间得到了很大程度的缩短。云计算平台能够为用户提供比较安全可靠的数据存储中心,在完善的权限管理规则以及数据备份技术等综合性应用下,就能对数据信息的安全完整性得到有效保障。

另外,云计算中的一些功能都是在云端的,这就在客户端的要求得到了有效降低。在对云计算技术的实际应用过程中,能对不同类型以及性能的设备加以应用进行访问云空间,进行执行相应的操作,有的在网页的应用下就能得到有效完成。在云计算技术的应用下,能够对数据间的共享和传输也比较的方便。所以在具体的应用过程中就有着很大的优势。

3. 云计算技术的实际应用和发展趋势

3.1 云计算技术的实际应用分析

云计算技术在实际中的应用范围比较广泛,例如在ICT业务平台中的应用上就发挥着重要的作用。以往的ICT运行模式有着诸多缺陷,资源浪费问题比较突出,在管理的效率也比较低,对实际的需求得不到有效满足。但是在云计算技术的应用下,就能够对这一业务平台实现升级,能够建立集中性的资源池管理的体系,对用户能够提供Paas、Saas等服务,这样就大大地提升了服务效率。客户只需要对浏览器进行操作就能完成数据系统的访问管理,在使用上比较方便,也对这一业务的不兼容终端的问题得到了有效解决,从整体上提升了业务水平。

云计算技术在IDC数据处理平台中的应用作用的积极发挥也比较突出。主要是在虚拟技术的应用下,能对这一控制中心的软硬件资源实施有效整合,对其中的各种资源实施动态化的管理监控等。不能为用户提供IaaS的相关业务服务,对用户也能出租硬件资源,这样就比较便于系统部署工作的完成,在资源的分配方面也能合理化地完成。在云计算技术的应用作用下,能够在计费功能上得到充分发挥,能结合资源的使用情况实施付费,这样就有效地对投入成本得到了降低,在管理的平台方面也能实现规范化以标准化的目标。

3.2 云计算技术的发展趋势探究

云计算技术在实际应用中发挥着积极作用,在未来的发展中,云计算技术将会有着更大的发展潜力。云计算对互联网的应用以及产品应用模式等方面都会产生很大的影响,主要的发展方向就向着手机云计算以及商业发展和时代资源这几个方向迈进。在移动终端设备的迅速发展下,云计算技术的兼容性就得到了体现,为客户在移动终端的服务上得到了进一步发展,能够将手机和云计算技术得到有机结合。这样就能更为便捷地实现高效云计算的应用功能。

结语

总而言之,云计算技术的不断发展过程中,对社会的进步发展起到的作用也愈来愈大,在相应的维护工作有效性以及经济性方面将更为重要。云计算的实际应用中的优势发挥,将会进一步地为这一技术的推广起到积极作用,在社会效益上就会有更大的价值体现。

参考文献

[1]李瑛,胡新炜.云计算关键技术分析研究[J].现代电子技术,2014(14):65-66.

[2]许知博,刘钊.基于云计算的工厂信息监测系统设计[J].电子科技,2011(8):148-150.

[3]曹青.云计算技术的应用及展望[J].江苏通信,2012(2):59-62.

云计算技术及应用篇(2)

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2012)19-4590-02

对目前广泛使用的几种云技术的对比,对云计算的技术结构做了简要的总结。最后对云计算在实际发展中遇到的问题以及未来的发展趋势做了预测分析。

目前计算机技术以及网络技术的原理以及实际应用都得到了快速的发展,单个计算机的性能的提升方面仍然存在很多需要研究以及解决的现实问题。用户在使用大量的网络资源的时候,实际上是已经采用了网络的优势取代了以前个人手中资源来实现计算机性能的提升。计算机网络技术将在世界范围内实现资源的共享转换为了现实。由于网格计算的概念主要是面向应用层面的,所以在网格计算的概念被提出以来,计算机性能的提升就面临这很多亟待解决的问题,网络的用户需要将其使用的程序转换为网络共享所需要的分布式程序结构,程序员面临这更多的技术问题,技术方面的障碍导致一般的用户在应用网络资源方面存在一定的困难。

目前市场上对于高性能的计算具有强烈的需求,面向WEB技术的网络服务也具有重要的地位。自从面向WEB的技术获得成功以后,计算机网络的应用领域得到了较大程度的拓展,网络的发展使得其功能已经由简单的信息传输或者信息的转换为信息资源的共享等应用。计算机云计算就是在这样的背景中应运而生了。尽管云计算技术发展时间不长,但是云计算的思路已经涉及到了诸如分布式系统技术、集群技术、网格计算等多种技术。从这个方面来分析,云计算可以认为是上述技术的综合以及升级。随着云计算技术的不断发展以及相关理论的不断完善,以如微软的Azure ,Amazon的EC2等云计算平台为代表云计算的商业应用已经成为了现实。

1 云计算的定义

美国的Larry Ellison在华尔街日报上发表了自己对于云计算的见解,他认为计算机云技术中存在这样的现象,也就是说一般需要根据目前已经完成使用的产品来重新定义云计算。Andy Isherwood也在2008年提出,对于云计算的专业研究,几乎所有的研究者所给出的定义都存在着差别。目前对于云计算的定义的业界仍然存在较大的争议,能够实现云计算的平台也是多种多样。目前对于云计算的定义主要是根据Ian Foster等人的研究以及对于云计算的分析与总结。

1)云计算中的每一朵云都是目前计算机并行分布式系统中一种,是由一些了网络化以及虚拟化的计算机提供的同意的服务层。同事会可以对计算资源进行同步。

2)网络中用户不是基于较长的时间间隔来进行基础设施的规划使用,目前可以实现分钟级甚至是秒级来实现基础设施的规划,这样应用的好处就是避免了网络资源的浪费或者是网络资源的过载。

3) 云计算不是孤立的,云计算是一个涉及多个方面的综合概念。一般认为云计算是软件技术发展的下一个逻辑阶段。对于用户而言,最能够被理解以及接受的所谓云计算其实就是在因特网层面上的集成软件。本定义中强调了云计算网络服务的基本属性。其他一些定义则注重了网络中基础设施的虚拟化,从本质上而言这些都是对于云计算概念不同层面的阐述。

根据以上的研究分析,云计算可以定义为:云算是通过网络进行常用的服务形式,其中所有涉及到的软件系统以及硬件系统的总称。与云计算相关的概念主要包括集成技术、网络计算、超级计算机等相互之间存在着相互区分但是又存在着相互联系的基本概念。云计算中主要是以其服务形式对网络中的用户提供必要的计算机网络资源,因为这个平台可以获得比传统的集群系统具有更为广泛的优势以及规模,所以基于云计算的计算机平平所能够提供的计算机性能就很有课程超过目前使用的超级计算机。另外在灵活性以及规模等方面,云计算技术的优越性更为明显。

2 云计算发展背景

云计算的出现以及迅速发展与网络的应用紧密相连。随着Web2.0相关理论的成熟以及相关技术的现实应用,云计算已经由商量的实验性网站逐步发展到目前广泛使用的校园内网以及多种应用方面。网络的商业模式已经发生了较大的变化。以一般运行的商业化网站为例,对一个可以获得较大商业利润的大型网站继续宁维护,所涉及的方面很多。主要包含了对系统硬件的维护以及对于市场调研的分析。这样就需要一个涉及等多方面的工作团队,同时对于网站所涉及的软件系统、硬件系统要负全面的责任。网站最终的获利只是这个超大规模团队的顶端的一小部分。这种极为不平衡的特点阻碍了网站的进一步发展。目前传统的计算模型主要存在一下的困难。

1)目前服务支持平台的规模缺乏可伸缩性,无法满足用户需求的变化。当服务业务的需求规模发生变化的时候,传统的计算模型无法作出适应性的及时调整。

2)目前建立大型的底层基础设施的成本较大。一般企业或者商业组织要在短期筹备相应的运行资本也存在着一定的难度。但是商业机遇总是争分夺秒的,快速岂不的能力对于网络运营商极为重要。

云计算技术及应用篇(3)

 

随着有关云计算概念、术语和技术的不断涌现和大量报道,人们在生活中越来越多的采用和实施云计算技术。由于云计算概念和技术比较新颖,涵义比较宽泛,再加上市场上一些人将云计算放大成无所不包、无所不能和无所不在的万能技术,对云计算的描述和推销多少出现了一些浮燥和炒做的嫌疑。脱离实际过分夸大或缺乏全面分析地炒做云计算不仅可能让人误解,也会使得云计算的发展不切实际,对于云计算产业在中国的成长非常不利。所以,有必要对云计算的由来和概念进行了较为全面的梳理和定义。在总结云计算技术为IT产业带来好处的同时,找出不足及局限,从而更好地发展云计算技术。

一、云计算的概念

云计算(Cloud Computing)是由分布式计算(Distributed Computing)、并行处理(ParallelComputing)、网格计算(Grid Computing)发展来的,是一种新兴的商业计算模型。

中国网格计算、云计算专家刘鹏认为 :“云计算将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和各种软件服务”。

云计算中的“计算”是一个简单而明确的概念。“计算”系指计算应用,在我们生活中可以指一切IT应用。随着网络技术的发展,所有的信息、通信和视频应用都将整合在统一的平台之上。由此推而广之,云计算中的“计算”可以泛指一切ICT的融合应用。所以,云计算术语的关键特征并不在于“计算”,而在于“云”。

二、云计算的发展模式及其特征

早期云计算来之于国际上以亚马逊、Saleforces.com和谷歌(Google)为代表的公司,并且都提供了具有显著特征,但又代表着不同模式的成功云业务。

云计算按照层次将业务模式划分为3层,最顶层是软云,中间层是平云,底层是基云。在基云之下是构建云计算的基础技术。

基云也称基础设施服务,指将IT的基础设施作为业务平台,直接按资源占用的时长和多少,通过公共互联网进行业务实现的“云”。基云的用户可以是个人,也可以是企业、集体和行政单位。基云的IT业务是将存储、网络、计算、安全等原始IT资源提供给用户。用户可以通过操作系统和应用软件(如Web服务软件和数据库等)来使用IT资源。

平云也称平台服务,指将应用开发环境作为业务平台,将应用开发的接口和工具提供给用户用于创造新的应用,并利用互联网和提供商来进行业务实现的“云”。

软云也称软件服务,指基于基云或平云开发的软件。软云是通过互联网的应用来实现业务,软云业务可以利用其他的基云和平云平台,也可以利用软云运营商自己的基云和平云环境。

基于云计算的实践与营销案例,归纳出云计算的基本特征如下:

(1) 虚拟化的超大规模

云业务的需求和使用与具体的物理资源无关,IT应用和业务运行在虚拟平台之上。论文写作,数据。云计算支持用户在任何有互联网的地方、使用任何上网终端获取应用服务。论文写作,数据。

(2)动态的高可扩展性

云技术使用户可以随时随地根据应用的需求动态地增减IT资源。由于应用运行在虚拟平台上,没有事先预订的固定资源被锁定,所以云业务量的规模可以动态伸缩,以满足特定时期、特定应用及用户规模变化的需要。

(3)高可用性

云平台使用数据多副本拷贝容错、计算节点同构可互换技术来保障服务的高可用性。任何单点物理故障发生,应用都会在用户完全不知情的情况下,转移到其他物理资源上继续运行,使用云计算比使用其他计算手段的可用性更高。

三、云计算技术的应用

传统模式下,企业建立一套IT系统不仅仅需要购买硬件等基础设施,还需要买软件的许可证,需要专门的维护人员。当企业的规模扩大时还要继续升级各种软硬件设施以满足需要。对个人来说,我们想正常使用电脑需要安装各种软件,而许多软件是收费的,对不经常使用该软件的用户来说购买是非常不划算的。对于企业来说,计算机等硬件和软件本身并非他们真正需要的,它们只是完成工作、提供效率的工具而已。

云计算的最终目标是将计算、服务和应用作为一种公共设施提供给公众,使人们能够像使用水、电、煤气和电话那样使用计算机资源。

最简单的云计算技术在网络服务中已经随处可见,例如搜寻引擎、网络信箱等,使用者只要输入简单指令即能得到大量信息。

目前,以Google云应用最具代表性,例如GoogleDocs、GoogleApps、Googlesites,云计算应用平台GoogleApp Engine。

四、云计算的发展趋势

“云计算”是一个很时尚的概念,它既不是一种技术,也不是一种理论。准确说,云计算仅描述了一类棘手的问题,因为现在这个阶段,“计算与数据”跷跷板的平衡已发生变化,即已经到“移动计算要比移动数据要便宜的多(Moving computation ischeaper than moving data)”。

随着个人PC市场的逐渐饱和,全球经济增长放缓对于企业IT投资的负面影响,云计算适时的出现在了大家的视野中。论文写作,数据。论文写作,数据。作为一种全新的获取计算资源的方式,云计算将会彻底改变IT产业的结构。论文写作,数据。由于计算资源从客户端向计算中心的集中,传统纯硬件厂商的生存空间将更为狭小,大浪淘沙的行业洗牌会继续持续。论文写作,数据。云计算模式下,互联网将成为连接厂商与客户的唯一通道,互联网业的霸主和软件供应商的融合势在必然。

虽然现在还有很多人担心云计算的可靠性和安全性等问题,但时间会证明这些问题在行业模式的大转变下都只不过是些细枝末节的问题。正如B2C刚刚兴起时,人们一度认为网上交易的安全性,支付的方便性等会阻碍它的发展,但随着时间的推移,这些问题已经被证明根本不值一提。同样,对于云计算带来的IT行业大变革,时间也会给出最好的答案。

五、结束语

云计算技术将不仅提供传统意义的IT资源和应用服务,而且将支持包括IT、通信、电视、移动和物联等一切互联网技术融合后的资源使用和业务应用。云计算发展的关键技术主要有统一交换构架、统一虚拟化和统一计算系统,云计算发展的战略推手将是组建开放产业联盟和推动开放技术标准。

云计算模式具有许多优点,但是也存在的一些问题,如数据隐私问题、安全问题、软件许可证问题、网络传输问题等。云计算技术它是一个即将,或者正在改变我们工作和生活的一场变革,是拥有比较持久生命力技术演变,包括商业模式的革新。“云计算”代表了一个时代需求,反映了市场关系的变化,谁拥有更为庞大的数据规模,谁就可以提供更广更深的信息服务,而软件和硬件影响相对缩小。

参考文献:

【1】(美)MICHAELMILLER.云计算[M].机械工业出版社.2009.

【2】(美)芬加.云计算[M].电子工业出版社.2009.

云计算技术及应用篇(4)

一、云计算简介

1.云计算的定义

云计算是一种基于互联网的超级计算模式。它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和各种软件服务。云计算实质上是通过互联网访问应用和服务,而这些应用或者服务通常不是运行在自己的服务器上,而是由第三方提供。它的目标是把一切都拿到网络上,云就是网络,网络就是计算机。云计算依靠强大的计算能力,使得成千上万的终端用户不担心所使用的计算技术和接入的方式等,都能够进行有效的依靠网络连接起来的硬件平台的计算能力来实施多种应用。云计算的新颖之处在于它几乎可以提供无限的廉价存储和计算能力。

基于云计算的原理和其固有的特点,云计算比其它新技术更容易进入高校。云计算对用户端的设备要求很低,这一特点决定云计算将会在学校大受欢迎。

2.云计算的特点

(1)服务提供的多元性

云就是庞大的计算机群,具备极高的计算、存储能力,能够完成单机所完不成的海量计算、存储等工作。云将调用云中的计算机群,使用基于海量数据的数据挖掘技术来搜索网络中的数据库资源,并运用各种方法为用户反馈出尽可能详尽、准确的结果,极大的扩展了而不是传统意义上的基于某个具体服务器为用户提供相应服务的工作模式;同时云中的计算机可以通过相应技术保持网络数据库信息的及时更新,用以保证用户服务的快速、准确。

(2)使用的便捷性

在云计算模式中所有应用和服务请求的数据资源均存储在云中,用户可以在任意场合、时间通过网络接入云平台,使用统一的云服务,按照自身的需求获取所需信息,并可以实现不同终端、设备间的数据与应用共享,为工作带来极大的便利和效率。

(3)服务的安全性

分布式系统具有高度容错机制,云计算作为分布式处理技术的发展,依托据存储中心可以实现严格、有效的控制、配置与管理,具有更好的可靠性、安全性和连接性能,同时高度集中化的数据管理、严格的权限管理策略可以让用户避免数据丢失、病毒入侵等麻烦。

(4)用户端设备成本低廉

由于云计算模式下大量的计算及存储工作都被放到了网络上,作为个人的用户端就完全可以简化到只有一个浏览器了。云计算模式中用户只需通过网络使用服务商所提供的相关服务,并按实际使用情况付费,具体的计算机系统硬件配置、设备运行维护开支和服务器系统软、硬件升级都由云服务提供商来完成。云计算的端设备和现在的pc机相比,云计算终端功耗低,成本低廉,终端用户使用简单,维护方便。

二、云计算为高校教育信息化建设提供新的思路

1.云计算能大大节约信息化的资金投入

目前的高校信息化建设中成本主要来源于软硬件的购置、日常维护及设备更新等,如果将这些建立在云计算和服务的基础之上,将大大减少资金投入。其一,整个网络课程建设的基础平台将是云服务提供商提供的跨平台、运算能力强大、资源丰富的统一的通用信息平台,无需购买本地服务器,仅需投入少数管理终端及云接入设备即可;其二,所有的服务提供均由云端提供,无需为保证服务器运行的可靠性、保证存储在服务器中的数据资源的安全以及避免因网络访问异常导致服务器瘫痪而对网络服务器响应及接入数量等进行限制,因此原来维护、升级等工作几乎降至最低,管理成本也相应可以大大降低。

2.真正实现资源整合,建立统一的资源平台

将高校信息化建立在云计算和服务的基础之上,将繁重的网络信息平台建设、服务器的配备、课程资源的存储与管理等工作交给云服务提供商,那么现有分散的、自成一体、本地化的网络信息平台将转变成为一个与具体网络运行环境、网络服务器系统、网络操作系统无关的强大的统一的通用信息平台,在这个平台上以成千上万的云服务器为依托,拥有着极其强大的计算功能、海量的网络资源,现有的网络课程建设中存在的软、硬件资源重复投入、虚拟化教学设备运行能力支持等问题将迎刃而解。

3.云计算的应用能够保证高校师生的信息安全

云计算技术及应用篇(5)

abstract: virtualization and distributed parallel architecture are two typical technologies of cloud computing. for virtualization technology, this article discusses the pool of physical resources, resource pool management and use, cluster fault location and maintenance, resource pool grouping, and the building and application of heterogeneous virtualization platforms. it also discusses the distributed file system and key/value storage engine associated with distributed technology. a “master bottleneck” storage interface standard is proposed for the distributed file system, and directory-based storage is proposed for the key/value storage engine.

key words: virtualization; distributed computing; cloud computing management platform; key/value storage engine

云计算由google提出,随后在互联网界风起“云”涌,随之而来的云计算服务和技术平台成功案例层出不穷,如google的gfs、mapreduce、bigtable、chubby和app engine,亚马逊的dynamo、ec2、s3、sqs、simpledb和cloudfront,微软的azure、sql、“.net”和live服务,开源云计算平台的hdfs、hbase和eucalyptus,vmware的虚拟化平台等。

1 云计算的核心技术

云计算主要基于资源虚拟和分布式并行架构两大核心技术,同时互联网上有大量的开源软件为用户提供支撑,如xen、kvm、lighttpd、memcached、nginx、hadoop、eucalytus等。云计算技术有效地节约了云服务商的硬件投入、软件开发成本和维护成本。

虚拟化技术最早由vmware公司引入并在x86 cpu上实现。虚拟化平台将服务器虚拟为多个性能可配的虚拟机(vm),对整个集群系统中所有vm进行监控和管理,并根据实际资源使用情况对资源池灵活分配和调度。

分布式并行架构是云计算的另一个核心技术,用于将大量的机器整合为一台超级计算机,提供海量的数据存储和处理服务。整合后的超级计算机通过分布式文件系统、分布式数据库和mapreduce技术,提供海量文件存储、海量结构化数据存储和统一的海量数据处理编程方法和运行环境[1-3]。

2 虚拟化技术

虚拟化技术主要分为两个层面:物理资源池化和资源池管理。其中物理资源池化是把物理设备由大化小,将一个物理设备虚拟为多个性能可配的最小资源单位;资源池管理是对集群中虚拟化后的最小资源单位进行管理,根据资源的使用情况和用户对资源的申请情况,按照一定的策略对资源进行灵活分配和调度,实现按需分配资源[4-7]。

2.1 物理资源的池化

云计算平台如图1所示。物理硬件设备的虚拟化对象包括服务器、存储、网络、安全等多个方面,不同的虚拟化技术从不同角度解决系统的各种问题。

(1)服务器虚拟化

服务器虚拟化对服务器进行资源虚拟和池化,将一台服务器虚拟为多个同构的虚拟服务器,同时对集群中的虚拟服务器资源池进行管理。

(2)存储虚拟化

存储虚拟化主要是对传统的存储区域网络(san)、网络附加存储(nas)设备进行异构,将存储资源按类型统一集中为一个大容量的存储资源,并将统一的存储资源通过分卷、分目录的权限和资源管理方法进行池化,然后将虚拟存储资源分配给各个应用使用,或者是直接分配给最终用户使用。

(3)网络虚拟化

网络虚拟化将一个物理网络节点虚拟成多个虚拟的网络设备(交换机、负载均衡器等),并进行资源管理,配合虚拟机和虚拟存储空间为应用提供云服务。

2.2 资源池的管理和使用

资源池由云管理平台实现统一的管理、调度和监控,涉及云平台的合理使用和维护管理。云管理平台共分为4个管理层面,分别为:设备的管理、虚拟资源的管理、服务的管理和租户管理。

(1)设备管理

设备管理为云计算平台的硬件设备提供管理和告警功能,主要包括系统管理员在日常的维护工作中查询各物理设备性能情况,并对如应用服务器的cpu使用率、内存使用率、硬盘使用率、网络接口使用率、存储设备的空间使用率、io情况等关键指标进行监控。用户可以根据应用物理设备的实际配置,设置相应的监控阈值,系统会自动启动对相应指标的监控并报警。

(2)虚拟资源管理

虚拟资源管理为各种应用提供虚拟资源的统一管理、资源分配和灵活调度,同时还包括系统管理员在日常的维护工作中查询各个最小虚拟资源的性能情况,并对应用虚拟机的cpu使用率、内存使用率、硬盘使用率、网络接口使用率,虚拟存储(如亚马逊的ebs)的空间使用率、io情况等关键指标进行监控。用户可以根据虚拟资源的实际配置,设置相应的监控阈值,系统会自动启动对相应指标的监控并报警。

(3)服务管理

服务管理包括服务模板、服务实例、服务目录等管理。服务管理在虚拟资源的基础上,快速向租户提供用户指定的操作系统、应用软件等软件资源。

(4)租户管理

租户管理对每一个租户对应的资源群进行管理,内容包括资源的种类、数量、分布情况等,同时对租户生命周期进行管理,包括租户的申请、审核、正常、暂停、注销等。

2.3 集群的故障定位与维护

google的集群维护方式给我们留下了深刻的印象,维护人员推着小推车对损坏的机器进行更换,故障定位通过定制pc的故障灯进行判断(在通用的因特网数据中心(idc)应用中,计算资源通常使用通用pc机)。目前所有的云平台对物理机和虚拟机的监控、告警,都是按照机器的ip地址作为机器的编号进行管理。对于承载着虚拟机的物理机而言,其host os模块的ip地址对应和代表着物理机器在集群中的唯一标志。ip地址的分配一般采用两种方式:采用动态主机配置协议(dhcp)方式自动获取;通过手工指定方式确定。由于集群中机器很多,手工指定工作量非常巨大,因此通常采用dhcp的方式对ip地址进行分配。

但是维护人员在云管理平台上发现物理设备出了故障,维护人员无法通过ip地址对应到故障机器的具体物理位置,通用的pc机又没有故障灯等辅助定位手段。定位故障机器的物理位置并更换或维护它成为一个复杂和繁琐的过程。

在的虚拟化集群中,可以采用简单而有效的方法解决此问题。对于每一台物理机器,配置一个usb接口的key,key中保存了物理机器的位置信息,同时usb key与物理位置直接绑定(如绑在机架上)。机器在启动时,会到usb key中读取物理位置信息,根据读取的物理位置信息,依据固定的算法和物理信息算出机器的ip地址,并在管理平台中体现。这样,每个物理机器的ip地址就与物理位置绑定,在物理机器故障时,维护人员在云管理平台可以准确获取故障机器的ip地址和物理位置。

2.4 资源池的分组与异构

对于服务器的虚拟化,由于架构不同,sun、ibm等厂家的小型机虚拟化都采用相互独立的架构,与基于x86架构的虚拟化系统(如xen、kvm等)无法兼容,因此造成了资源浪费。

对于服务器虚拟化的异构问题,可以从两个层面去解决:(1)通过资源池的分组,对不同架构的服务器和小型机进行虚拟化,不同架构的资源池归于一个独立的组,针对不同的应用,分配特定的虚拟机资源。(2)通过业务的定制和调度,将不同架构的虚拟化平台通过管理融合,实现异构虚拟机的调度。

异构资源池如图2所示。在云计算平台中,把ibm的powersystems小型机集群通过ibm的powervm系统虚拟为基于powersystems架构的计算资源池,把hp的小型机集群通过hp的vse系统虚拟为基于hp架构的计算资源池,把x86架构的计算资源通过xen\kvm系统虚拟为基于x86的zxve资源池。在业务部署时,不同的应用的可以根据自己的业务特点和操作系统特点,选择性地部署在不同的资源池上,从而实现虚拟化对各类小型机的异构。x86架构的计算资源池、powersystems架构的计算资源池和hp架构的计算资源池分别受各自的虚拟化管理软件(如vmm、ivm和gwlm)管理。在vmm、ivm和gwlm的上层,可以通过融合的虚拟化管理器(ivmm),对3个计算资源池进行统一管理。

图3所示为虚拟资源对应用实现异构的方法。此方法的核心在于4个方面:ivmm、业务调度器、业务系统针对不同的资源池架构提供应用功能相同的不同版本、ivmm和业务调度器之间的occi扩充接口。

在业务应用层面,针对业务系统,本文增加业务调度器模块。业务调度器根据业务的繁忙程度,向ivmm申请增加或减少虚拟机资源,并调整负载均衡策略。业务系统针对不同的资源池架构,需要准备与之对应的功能相同的不同版本。occi扩充接口的工作流程为:

业务系统的业务调度器通过occi接口向云计算平台申请资源,同时向云计算平台提供业务系统可以支持的操作系统等信息,并提供优先级信息。

云计算平台根据业务系统的请求和云内资源的空闲情况,分配计算资源,通过occi接口通知业务调度器云计算平台向业务系统提供了何种架构的计算资源。

业务调度器根据申请到的资源情况,将业务处理机的操作系统、业务版本等模板信息通过occi接口通知云计算平台,由云计算平台进行操作系统和业务程序的部署,完成后提交给业务系统进行使用。

3 分布式技术

分布式技术最早由google规模应用于向全球用户提供搜索服务,因此必须要解决海量数据存储和快速处理的问题。其分布式的架构,可以让多达百万台的廉价计算机协同工作。分布式文件系统完成海量数据的分布式存储,分布式计算编程模型mapreduce完成大型任务的分解和基于多台计算机的并行计算,分布式数据库完成海量结构化数据的存储。互联网运营商使用基于key/value的分布式存储引擎,用于数量巨大的小存储对象的快速存储和访问。

3.1 分布式文件系统

分布式文件系统的架构,不管是google的gfs还是hadoop的hdfs,都是针对特定的海量大文件存储应用设计的。系统中有一对主机,应用通过文件系统提供的专用应用编程接口(api)对系统访问。分布式文件系统的应用范围不广的原因主要为:主机对应用的响应速度不快,访问接口不开放。

主机是分布式文件系统的主节点。所有的元数据信息都保存在主机的内存中,主机内存的大小限制了整个系统所能支持的文件个数。一百万个文件的元数据需要近1g的内存,而在云存储的应用中,文件数量经常以亿为单位;另外文件的读写都需要访问主机,因此主机的响应速度直接影响整个存储系统的每秒的读入输出次数(iops)指标。解决此问题需要从3个方面入手:

(1)在客户端缓存访问过的元数据信息。应用对文件系统访问时,首先在客户端查找元数据,如果失败,再向主机发起访问,从而减少对主机的访问频次。

(2)元数据信息存放在主机的硬盘中,同时在主机的内存中进行缓存,以解决上亿大文件的元数据规模过大的问题。为提升硬盘可靠性和响应速度,还可使用固态硬盘(ssd)硬盘,性能可提升10倍以上。

(3)变分布式文件系统主机互为热备用的工作方式为1主多备方式(通常使用1主4备的方式),通过锁服务器选举出主用主机,供读存储系统进行改写的元数据访问服务,如果只是读访问,应用对元数据的访问将被分布式哈希表(dht)算法分配到备用主机上,从而解决主机的系统“瓶颈”问题

对于分布式文件系统,外部应用通过文件系统提供的专用api对其进行访问,这影响了分布式文件系统的应用范围。对于标准的posix接口,可以通过fuse的开发流程实现,但将损失10%~20%的性能。对于网络文件系统(nfs),在实现posix接口的基础上,可以直接调用linux操作系统的nfs协议栈实现。

3.2 key/value存储引擎

key/value存储引擎最大的问题在于路由变更后,数据如何快速地实现重新分布。key/value存储引擎如图4所示。可以引进虚拟节点的概念,将整个key值映射的ring空间划分成q个大小相同的bucket(虚拟节点,key的映射算法推荐采用md5)。每个物理节点根据硬件配置情况负责多个bucket区间的数据。同一个bucket上的数据落在不同的n 个节点上,通常情况下n =3。我们将dcache的q设定成10万,即把整个ring空间分成了10万份,如果整个dcache集群最大容量为50 tb,每个区间对应的数据大小仅为500 mb。对500 mb的数据进行节点间的迁移时间可以少于10 s。图4中,n =3,bucket a中的数据存储在b、c、d 3个节点。

4 结束语

云平台的构建是一个具有挑战性的课题,本文详细描述了虚拟化和分布式架构两大核心技术。在基础设施即服务(iaas)层面,着重描述了虚拟化技术,以及异构的虚拟化云计算平台的建设和应用,同时介绍了云管理平台的功能。在分布式技术方面,介绍了分布式文件系统和key/value存储引擎。对于分布式文件系统,本文着重介绍了主机“瓶颈”解决方案及存储接口标准化的想法;对于key/value存储引擎,本文提出了用于目录化存储的解决方案。

5 参考文献

[1] 张为民, 唐剑峰, 罗治国, 等. 云计算:深刻改变未来 [m]. 北京: 科学出版社, 2009.

[2] 刘鹏. 云计算 [m]. 北京: 电子工业出版社, 2010.

[3] 王庆波, 金, 何乐, 等. 虚拟化与云计算 [m]. 北京: 电子工业出版社, 2009.

[4] scott granneman s. google apps deciphered: compute in the cloud to streamline your desktop [m]. upper saddle river, nj, usa: prentice-hall, 2009.

[5] reese g. cloud application architectures: building applications and infrastructure in the cloud [m]. sebastopol, ca, usa: o'reilly media, 2009.

[6] arrasjid j, epping d, kaplan s. foundation for cloud computing with vmware vsphere 4 [m]. berkeley, ca, usa: usenix association, 2010

[7] service delivery platforms and telecom web services: an industry-wide perspective [r]. the moriana group, 2004.

收稿日期:2010-05-28

云计算技术及应用篇(6)

abstract: virtualization and distributed parallel architecture are two typical technologies of cloud computing. for virtualization technology, this article discusses the pool of physical resources, resource pool management and use, cluster fault location and maintenance, resource pool grouping, and the building and application of heterogeneous virtualization platforms. it also discusses the distributed file system and key/value storage engine associated with distributed technology. a “master bottleneck” storage interface standard is proposed for the distributed file system, and directory-based storage is proposed for the key/value storage engine.

key words: virtualization; distributed computing; cloud computing management platform; key/value storage engine

云计算由google提出,随后在互联网界风起“云”涌,随之而来的云计算服务和技术平台成功案例层出不穷,如google的gfs、mapreduce、bigtable、chubby和app engine,亚马逊的dynamo、ec2、s3、sqs、simpledb和cloudfront,微软的azure、sql、“.net”和live服务,开源云计算平台的hdfs、hbase和eucalyptus,vmware的虚拟化平台等。WWW.133229.cOM

1 云计算的核心技术

云计算主要基于资源虚拟和分布式并行架构两大核心技术,同时互联网上有大量的开源软件为用户提供支撑,如xen、kvm、lighttpd、memcached、nginx、hadoop、eucalytus等。云计算技术有效地节约了云服务商的硬件投入、软件开发成本和维护成本。

虚拟化技术最早由vmware公司引入并在x86 cpu上实现。虚拟化平台将服务器虚拟为多个性能可配的虚拟机(vm),对整个集群系统中所有vm进行监控和管理,并根据实际资源使用情况对资源池灵活分配和调度。

分布式并行架构是云计算的另一个核心技术,用于将大量的机器整合为一台超级计算机,提供海量的数据存储和处理服务。整合后的超级计算机通过分布式文件系统、分布式数据库和mapreduce技术,提供海量文件存储、海量结构化数据存储和统一的海量数据处理编程方法和运行环境[1-3]。

2 虚拟化技术

虚拟化技术主要分为两个层面:物理资源池化和资源池管理。其中物理资源池化是把物理设备由大化小,将一个物理设备虚拟为多个性能可配的最小资源单位;资源池管理是对集群中虚拟化后的最小资源单位进行管理,根据资源的使用情况和用户对资源的申请情况,按照一定的策略对资源进行灵活分配和调度,实现按需分配资源[4-7]。

2.1 物理资源的池化

云计算平台如图1所示。物理硬件设备的虚拟化对象包括服务器、存储、网络、安全等多个方面,不同的虚拟化技术从不同角度解决系统的各种问题。

(1)服务器虚拟化

服务器虚拟化对服务器进行资源虚拟和池化,将一台服务器虚拟为多个同构的虚拟服务器,同时对集群中的虚拟服务器资源池进行管理。

(2)存储虚拟化

存储虚拟化主要是对传统的存储区域网络(san)、网络附加存储(nas)设备进行异构,将存储资源按类型统一集中为一个大容量的存储资源,并将统一的存储资源通过分卷、分目录的权限和资源管理方法进行池化,然后将虚拟存储资源分配给各个应用使用,或者是直接分配给最终用户使用。

(3)网络虚拟化

网络虚拟化将一个物理网络节点虚拟成多个虚拟的网络设备(交换机、负载均衡器等),并进行资源管理,配合虚拟机和虚拟存储空间为应用提供云服务。

2.2 资源池的管理和使用

资源池由云管理平台实现统一的管理、调度和监控,涉及云平台的合理使用和维护管理。云管理平台共分为4个管理层面,分别为:设备的管理、虚拟资源的管理、服务的管理和租户管理。

(1)设备管理

设备管理为云计算平台的硬件设备提供管理和告警功能,主要包括系统管理员在日常的维护工作中查询各物理设备性能情况,并对如应用服务器的cpu使用率、内存使用率、硬盘使用率、网络接口使用率、存储设备的空间使用率、io情况等关键指标进行监控。用户可以根据应用物理设备的实际配置,设置相应的监控阈值,系统会自动启动对相应指标的监控并报警。

(2)虚拟资源管理

虚拟资源管理为各种应用提供虚拟资源的统一管理、资源分配和灵活调度,同时还包括系统管理员在日常的维护工作中查询各个最小虚拟资源的性能情况,并对应用虚拟机的cpu使用率、内存使用率、硬盘使用率、网络接口使用率,虚拟存储(如亚马逊的ebs)的空间使用率、io情况等关键指标进行监控。用户可以根据虚拟资源的实际配置,设置相应的监控阈值,系统会自动启动对相应指标的监控并报警。

(3)服务管理

服务管理包括服务模板、服务实例、服务目录等管理。服务管理在虚拟资源的基础上,快速向租户提供用户指定的操作系统、应用软件等软件资源。

(4)租户管理

租户管理对每一个租户对应的资源群进行管理,内容包括资源的种类、数量、分布情况等,同时对租户生命周期进行管理,包括租户的申请、审核、正常、暂停、注销等。

2.3 集群的故障定位与维护

google的集群维护方式给我们留下了深刻的印象,维护人员推着小推车对损坏的机器进行更换,故障定位通过定制pc的故障灯进行判断(在通用的因特网数据中心(idc)应用中,计算资源通常使用通用pc机)。目前所有的云平台对物理机和虚拟机的监控、告警,都是按照机器的ip地址作为机器的编号进行管理。对于承载着虚拟机的物理机而言,其host os模块的ip地址对应和代表着物理机器在集群中的唯一标志。ip地址的分配一般采用两种方式:采用动态主机配置协议(dhcp)方式自动获取;通过手工指定方式确定。由于集群中机器很多,手工指定工作量非常巨大,因此通常采用dhcp的方式对ip地址进行分配。

但是维护人员在云管理平台上发现物理设备出了故障,维护人员无法通过ip地址对应到故障机器的具体物理位置,通用的pc机又没有故障灯等辅助定位手段。定位故障机器的物理位置并更换或维护它成为一个复杂和繁琐的过程。

在的虚拟化集群中,可以采用简单而有效的方法解决此问题。对于每一台物理机器,配置一个usb接口的key,key中保存了物理机器的位置信息,同时usb key与物理位置直接绑定(如绑在机架上)。机器在启动时,会到usb key中读取物理位置信息,根据读取的物理位置信息,依据固定的算法和物理信息算出机器的ip地址,并在管理平台中体现。这样,每个物理机器的ip地址就与物理位置绑定,在物理机器故障时,维护人员在云管理平台可以准确获取故障机器的ip地址和物理位置。

2.4 资源池的分组与异构

对于服务器的虚拟化,由于架构不同,sun、ibm等厂家的小型机虚拟化都采用相互独立的架构,与基于x86架构的虚拟化系统(如xen、kvm等)无法兼容,因此造成了资源浪费。

对于服务器虚拟化的异构问题,可以从两个层面去解决:(1)通过资源池的分组,对不同架构的服务器和小型机进行虚拟化,不同架构的资源池归于一个独立的组,针对不同的应用,分配特定的虚拟机资源。(2)通过业务的定制和调度,将不同架构的虚拟化平台通过管理融合,实现异构虚拟机的调度。

异构资源池如图2所示。在云计算平台中,把ibm的powersystems小型机集群通过ibm的powervm系统虚拟为基于powersystems架构的计算资源池,把hp的小型机集群通过hp的vse系统虚拟为基于hp架构的计算资源池,把x86架构的计算资源通过xen\kvm系统虚拟为基于x86的zxve资源池。在业务部署时,不同的应用的可以根据自己的业务特点和操作系统特点,选择性地部署在不同的资源池上,从而实现虚拟化对各类小型机的异构。x86架构的计算资源池、powersystems架构的计算资源池和hp架构的计算资源池分别受各自的虚拟化管理软件(如vmm、ivm和gwlm)管理。在vmm、ivm和gwlm的上层,可以通过融合的虚拟化管理器(ivmm),对3个计算资源池进行统一管理。

图3所示为虚拟资源对应用实现异构的方法。此方法的核心在于4个方面:ivmm、业务调度器、业务系统针对不同的资源池架构提供应用功能相同的不同版本、ivmm和业务调度器之间的occi扩充接口。

在业务应用层面,针对业务系统,本文增加业务调度器模块。业务调度器根据业务的繁忙程度,向ivmm申请增加或减少虚拟机资源,并调整负载均衡策略。业务系统针对不同的资源池架构,需要准备与之对应的功能相同的不同版本。occi扩充接口的工作流程为:

业务系统的业务调度器通过occi接口向云计算平台申请资源,同时向云计算平台提供业务系统可以支持的操作系统等信息,并提供优先级信息。

云计算平台根据业务系统的请求和云内资源的空闲情况,分配计算资源,通过occi接口通知业务调度器云计算平台向业务系统提供了何种架构的计算资源。

业务调度器根据申请到的资源情况,将业务处理机的操作系统、业务版本等模板信息通过occi接口通知云计算平台,由云计算平台进行操作系统和业务程序的部署,完成后提交给业务系统进行使用。

3 分布式技术

分布式技术最早由google规模应用于向全球用户提供搜索服务,因此必须要解决海量数据存储和快速处理的问题。其分布式的架构,可以让多达百万台的廉价计算机协同工作。分布式文件系统完成海量数据的分布式存储,分布式计算编程模型mapreduce完成大型任务的分解和基于多台计算机的并行计算,分布式数据库完成海量结构化数据的存储。互联网运营商使用基于key/value的分布式存储引擎,用于数量巨大的小存储对象的快速存储和访问。

3.1 分布式文件系统

分布式文件系统的架构,不管是google的gfs还是hadoop的hdfs,都是针对特定的海量大文件存储应用设计的。系统中有一对主机,应用通过文件系统提供的专用应用编程接口(api)对系统访问。分布式文件系统的应用范围不广的原因主要为:主机对应用的响应速度不快,访问接口不开放。

主机是分布式文件系统的主节点。所有的元数据信息都保存在主机的内存中,主机内存的大小限制了整个系统所能支持的文件个数。一百万个文件的元数据需要近1g的内存,而在云存储的应用中,文件数量经常以亿为单位;另外文件的读写都需要访问主机,因此主机的响应速度直接影响整个存储系统的每秒的读入输出次数(iops)指标。解决此问题需要从3个方面入手:

(1)在客户端缓存访问过的元数据信息。应用对文件系统访问时,首先在客户端查找元数据,如果失败,再向主机发起访问,从而减少对主机的访问频次。

(2)元数据信息存放在主机的硬盘中,同时在主机的内存中进行缓存,以解决上亿大文件的元数据规模过大的问题。为提升硬盘可靠性和响应速度,还可使用固态硬盘(ssd)硬盘,性能可提升10倍以上。

(3)变分布式文件系统主机互为热备用的工作方式为1主多备方式(通常使用1主4备的方式),通过锁服务器选举出主用主机,供读存储系统进行改写的元数据访问服务,如果只是读访问,应用对元数据的访问将被分布式哈希表(dht)算法分配到备用主机上,从而解决主机的系统“瓶颈”问题

对于分布式文件系统,外部应用通过文件系统提供的专用api对其进行访问,这影响了分布式文件系统的应用范围。对于标准的posix接口,可以通过fuse的开发流程实现,但将损失10%~20%的性能。对于网络文件系统(nfs),在实现posix接口的基础上,可以直接调用linux操作系统的nfs协议栈实现。

3.2 key/value存储引擎

key/value存储引擎最大的问题在于路由变更后,数据如何快速地实现重新分布。key/value存储引擎如图4所示。可以引进虚拟节点的概念,将整个key值映射的ring空间划分成q个大小相同的bucket(虚拟节点,key的映射算法推荐采用md5)。每个物理节点根据硬件配置情况负责多个bucket区间的数据。同一个bucket上的数据落在不同的n 个节点上,通常情况下n =3。我们将dcache的q设定成10万,即把整个ring空间分成了10万份,如果整个dcache集群最大容量为50 tb,每个区间对应的数据大小仅为500 mb。对500 mb的数据进行节点间的迁移时间可以少于10 s。图4中,n =3,bucket a中的数据存储在b、c、d 3个节点。

4 结束语

云平台的构建是一个具有挑战性的课题,本文详细描述了虚拟化和分布式架构两大核心技术。在基础设施即服务(iaas)层面,着重描述了虚拟化技术,以及异构的虚拟化云计算平台的建设和应用,同时介绍了云管理平台的功能。在分布式技术方面,介绍了分布式文件系统和key/value存储引擎。对于分布式文件系统,本文着重介绍了主机“瓶颈”解决方案及存储接口标准化的想法;对于key/value存储引擎,本文提出了用于目录化存储的解决方案。

5 参考文献

[1] 张为民, 唐剑峰, 罗治国, 等. 云计算:深刻改变未来 [m]. 北京: 科学出版社, 2009.

[2] 刘鹏. 云计算 [m]. 北京: 电子工业出版社, 2010.

[3] 王庆波, 金, 何乐, 等. 虚拟化与云计算 [m]. 北京: 电子工业出版社, 2009.

[4] scott granneman s. google apps deciphered: compute in the cloud to streamline your desktop [m]. upper saddle river, nj, usa: prentice-hall, 2009.

[5] reese g. cloud application architectures: building applications and infrastructure in the cloud [m]. sebastopol, ca, usa: o'reilly media, 2009.

[6] arrasjid j, epping d, kaplan s. foundation for cloud computing with vmware vsphere 4 [m]. berkeley, ca, usa: usenix association, 2010

[7] service delivery platforms and telecom web services: an industry-wide perspective [r]. the moriana group, 2004.

收稿日期:2010-05-28

云计算技术及应用篇(7)

中图分类号:TN 文献标识码:A 文章编号:1009-914X(2016)17-0272-01

一、引言

信息时代的到来和深入,使网络服务需求与日俱增,但海量的数据资源难免会影响到其服务的效率和质量。虚拟化技术为云计算的一项核心技术,通过对物理设备、逻辑业务层进行解绑定来实现对软件驱动资源的配置。既满足了网络服务需求,也有着较高的可靠性、经济性和通用性,故被视为升级版网络计算。该技术概念体现在计算、网络、桌面、存储、应用等诸多方面,基于提供IT基础能力的角度可将之分为计算虚拟化、网络虚拟化与存储虚拟化等,云计算的应用与发展为虚拟化技术的发展与应用提供了新契机,并逐渐推广应用于不同的领域。随着科学技术的发展,云计算与虚拟化已发展成现代信息产业领域极受关注的新兴概念,而虚拟化技术作为信息资源方式先进使用技术也愈发得到相关部门的重视。云计算也逐渐从新兴事物渗透至信息产业各领域,产业界各大公司正投入大量资源对云计算产品进行研究与开发。

二、云计算虚拟化技术的基本原理

1、相关性

虚拟化计算模型为云计算技术的实质,是通过将计算任务分布于大量计算机所组成的资源池,以使各应用系统可根据自身需要来获取相应的计算力、信息服务与存储空间。通过网络通信技术,云计算技术可根据需求提供动态可伸缩廉价计算服务,以创新计算模式确保用户经由互联网随时获取大量计算能力与多样化信息服务。

2、云计算服务层次

根据云计算服务集合提供的服务类型可将其服务划分为四个层次,即:平台层、虚拟化层、应用层与基础设施层,这四个层次的每一层均有着一个子服务集合与之对应。应用层主要任务为软件实时服务;基础设施层其主要任务为软硬件环境基础设施服务的实现;平台层的主要任务则是以网络通信为基础的平台构架的实现;虚拟化层的主要任务是为了提供强大“云”网络,通过连接并发网络设备来完成实时计算与服务。

三、云计算虚拟化技术的应用

随着信息技术的发展,虚拟化技术与云计算技术的发展速度也在逐步加快。在此期间,不断涌现出新技术、新产品和新概念。目前,云计算虚拟化技术已经被广泛应用。

1、虚拟化平台

以互联网为基础,形成虚拟化的运行平台,通过此平台虚拟化网络来实现将计算资源转化为远程资源的输送,这个过程是具有实时交互性的。而事实上,这种运行的虚拟化平台在数据共享与数据实时运用中具有非常重要的意义。

2、多层模式的在线业务系统

以多层模式为基础的在线业务系统是利用数据虚拟化技术,并结合着现代化的通信技术,进而成功完成对信息资源的统一部署、、继承与共享,还可以同时为不同用户提供在线服务与信息资源的开发。这种在线业务系统,可实现分布式资源数据的整合,促使各项资源能够达到互联互通。该业务系统对多组用户模式在线服务及开发予以支持,可以对资源进行高效整合,并按需分配资源,促进分布式资源数据间整合的有效实现。同时,利用在线业务系统,还可以提高资源利用率,根据用户的不同需要分配与之相匹配的资源,有效避免产生数据孤岛。

3、云存储服务

云存储指的是通过网络技术、集群应用、分布式文件系统等相关功能,利用软件将存储在网络系统中的不同类型设备集合起来保持协同性,同时对外提供必要的数据存储与业务访问。这一系列过程其实已经形成了一个系统,在该系统内,云存储就是将数据存储与管理作为中心内容的云计算服务系统。在分析云存储服务系统时,发现该系统的由存储层、基础管理层、访问层以及应用接口层组成。在资源共享与信息服务中,云存储服务发挥着非常重要的作用。利用云存储服务系统,既能保证系统信息存储的有效性,也能提高信息的存储率。与此同时,在云计算虚拟化技术应用的过程中,云存储服务始终是占据着非常重要的作用。

4、云通信服务

云通信是以云计算模式的应用为基础的通信平台服务,在分析云通信原理时,发现不同的通信平台软件均集中于云端且能兼容互通。用户在使用时,只需登陆云通信平台,不需要再单独登陆其他软件。从当前的应用情况看,云通信具有的灵活部署促使人们可以根据自己的需要来进行通信分配与消费,已逐渐成为时代的主流。总之,云通信服务在信息提供中所发挥的作用是不可忽视的。

四、云计算虚拟化技术的发展趋势

1、平台开放化

作为基础平台,封闭架构带来不兼容性,无法支持异构虚拟机系统,也难以支撑开放合作的产业链需求。随着云计算时代的来临,虚拟化管理平台向开放平台架构转变,多种厂家的虚拟机可以在开放的平台架构下共存,不同的应用厂商可以基于开放平台架构使其应用不断的丰富。

2、连接协议标准化

目前有VMware的PCoIP,Citrix的ICA,微软的RDP等桌面虚拟化连接协议,而最值得一提的是国内虚拟化软件公司―方物软件的FAP。多种连接协议在公有桌面云情况下,将带来终端兼容性的复杂化,终端将需要支持多种虚拟化客户端软件,对于嵌入式的云终端来说,限制了客户采购的选择性和替代性。未来桌面连接协议标准化之后,终端和云平台之间的广泛兼容性将会解决,从而形成良性的产业链结构。

3、公有云私有化

在公有云场景,政府/企业整体IT架构构建在公有云上,对数据的安全性要求非常高,也可以说,公有云的安全性没有得到解决,就无法推进企业IT架构转变为公有云模式。在公有云场景,需要提供类似于VPN的技术,把企业的IT架构变成叠加在公有云上的“私有云”,这样既享受了公有云的服务便利性,也使私有数据的安全性得当了保证。

4、虚拟化客户端硬件化

当前的桌面虚拟化和应用虚拟化技术对于富媒体的客户体验和传统的PC终端相比还是有一定的差距的,其原因是对于富媒体,如:2D/3D/视频/Flash等都缺少硬件辅助虚拟化支持。随着虚拟化技术的逐渐成熟及广泛应用,终端芯片将会逐步加强对虚拟化的支持,从而通过硬件辅助处理来提升富媒体的用户体验。特别是对于PAD、智能手机等移动终端设备,如果对虚拟化指令有较好的硬件辅助支持,将促使虚拟化技术在移动终端的落地。

五、结束语

总之,在信息技术逐步发展与应用的过程中,云计算虚拟化技术的应用也在逐步深入。云计算时代是开放、共赢的时代,作为云计算基础架构的虚拟化技术,将会不断的有新的技术变革,逐步的增强开放性、安全性、兼容性以及用户体验。

云计算技术及应用篇(8)

云计算是物联网发展的基础。互联网主要解决人与人的互联,连接了虚拟与真实的空间;而物联网主要解决的是物与物之间的互联,连接了现实与物理世界。物联网是以互联网的发展为前提的。随着物联网应用的发展、终端数量的增长,会产生非常庞大的数据流,这时就需要一个非常强大的信息处理中心。传统的信息处理中心是难以满足这种计算需求的,在应用层就需要引入云计算中心处理海量信息,进行辅助决策。云计算作为一种虚拟化、分布式和并行计算的解决方案,可以为物联网提供高效的计算能力、海量的存储能力,为泛在链接的物联网提供网络引擎和支撑。

1 分布式缓存的发展

在互联网应用刚起步时,各种平台大多采用的是关系型数据库。那时PC机昂贵、性能低下并且网络不普及,而关系型数据库因为处理能力强、数据安全可靠、一致性好等优势,一直处于主导地位,并发挥了重要的作用。随着互联网的发展,特别是WEB 2.0等交互式、个性化应用的出现,数据量急剧增加,传统的关系型数据库已经无法满足这种快速增长的存储需求。为此不少IT服务提供商都设计开发了自己的存储系统,如亚马逊在2007年10月份开发出的Dynamo就是其中非常典型的一种存储系统(如图1所示),作为状态管理组件和存储服务的基础被用于众多的亚马逊的系统中。

对于Google,Amazon,淘宝这样的互联网企业,每时每刻都有无数的用户在使用它们提供的互联网服务,这些服务带来的是大量的数据吞吐量,在同一时间,并发的会有成千上万的连接对数据库进行操作。在这种情况下,单台服务器或者几台服务器远远不能满足这些数据的处理需求,单靠提升服务器性也已经改变不了该情况,所以唯一可以采用的办法就是扩展服务器的规模。服务器规模扩展通常有两种方法:一种是仍然采用关系型数据库,然后通过对数据库的垂直和水平切割将整个数据库部署到一个集群上,这种方法的优点在于可以采用基于关系型数据库(RDBMS)的技术,但缺点在于它是针对特定应用,实施非常困难;另外一种方法就是Google和Amazon所采用的方法,抛弃关系型数据库,采用Key-Value形式的存储,这样可以极大地增强系统的可扩展性。事实上,基于Key-Value的分布式缓存就是由于Google的BigTable,Amazon的Dynamo以及Facebook的Cassandra等相关论文的发表而慢慢进入人们的视野,这些互联网巨头在分布式缓存上的成功实践也使之成为了云计算的核心技术。

2 分布式缓存技术

2.1 分布式缓存的部署方式

缓存服务器集群采用无主架构,所有服务器节点地位完全一致,互相之间采用网状的全连接方式。应用通过调用分布式缓存提供的API对数据进行透明访问,无需关心数据在后端服务节点的分布情况。数据在集群各节点均匀分布,集群数据处理能力随集群中节点数量的扩充呈线性增长。集群通过数据的多副本机制能够提高系统的可用性,某几台服务节点的宕机对应用的数据访问没有任何影响。服务器节点能够根据应用的需求灵活配置数据是否持久化存储。

分布式缓存同时提供操作控制台,能够登录到任何一个服务节点并对集群的成员关系、访问负荷、数据分布进行监控和配置,同时通过操作维护台可以完成分布式缓存集群软件版本的安装、升级和配置。目前分布式缓存提供基于命令行(telnet登录)和基于B/S的图形化运维方式。分布式缓存系统的具体部署如图2所示。

2.2 分布式缓存功能架构

分布式缓存为应用程序提供了客户端程序库以及若干数据服务节点组成的服务集群,客户端通过和数据服务节点通信形成可用服务器列表,并将应用程序提交的存取请求通过路由算法映射到一个确定的数据服务节点上,具体的功能架构如图3中所示。

数据服务节点主要分成3个层次:通信支撑层、数据处理层和数据存取层。

通信支撑层主要负责通信协议适配,根据数据处理层中路由链路管理模块的指示进行端口的侦听和主动建链,同时完成底层通信数据包的发送和接收。

数据处理层包括路由链路管理模块、访问控制处理模块以及数据迁移控制模块。

数据存储层提供内存/SSD/硬盘介质的三级存储管理,具体可以根据应用的要求进行不同的配置。内存管理关注内存分配的效率以及如何避免内存碎片的形成,并根据数据访问频度进行最近最少使用算法(LRU)控制。SSD和硬盘存储模式在保证访问性能的同时提供数据的持久化存储,在这两种存储模式下数据不会随着服务节点重新启动而丢失。数据存储层提供数据生存期管理机制,能够自动清理过期数据。

2.3 分布式缓存关键技术

分布式缓存在保证数据访问可靠性、最终一致性的同时对应用提供高吞吐、低时延的访问服务,通过增加数据服务节点即能实现处理能力的性能扩充,扩容过程对应用访问完全透明。下面对分布式缓存涉及的关键技术进行介绍。

2.3.1 NRW多副本机制

分布式缓存通过多副本机制实现数据访问的可靠性,同时多个副本之间的数据同步又会带来性能和一致性的问题。我们采用NRW多副本技术来保证数据在可靠性、高性能访问以及最终一致性之间取得平衡。图4是NRW机制的示意图,其中N是一个数据的副本数,R代表一次成功的读取操作中最小参与节点数量,W代表一次成功的写操作中最小参与节点数量。当分布式缓存的访问模型满足R+W >N时就能保证数据访问的可靠性和一致性。

R和W直接影响性能、可用性和一致性。如果W设置 为 1,则分布式缓存集群中只要有一个节点可用,就不会影响写操作;如果R 设置为1,则分布式缓存集群中只要有一个节点可用,就不会影响读请求。但显而易见R 和W值过小都会对影响数据访问的性能和可用性,为兼顾性能、可用性和一致性,这两个值一定要合理设置。

2.3.2 一致性Hash和虚节点

一致性Hash需要首先求出分布式缓存数据服务器(节点)的哈希值,并将其配置到0~232的圆上,用同样的方法求出存储数据的键的哈希值,并映射到圆上。然后从数据映射到的位置开始顺时针查找,将数据保存到找到的第一个服务器上。如果超过232仍然找不到服务器,就会保存到第一台缓存数据服务器上。因为数据节点服务器的机型并不统一,其性能和容量是不同的,可以使一个物理节点负责多个Hash区间的处理,使高端机器能够被充分利用。在出现热区时,可以将过热的Hash区间以虚拟节点的方式放在负荷较低的物理节点上。

分布式缓存平台结合了一致性Hash和虚拟节点的特点并加以改进,形成了如图5的方案:将232的Hash空间等分为若干分片,每个分片即是一个虚节点,根据各物理节点性能差异配置处理不同数量的虚节点,这些虚节点在物理节点上的部署关系即形成虚节点的路由。

通过一致性Hash和虚节点相结合的方式,实现了数据在集群的均匀分布,同时也实现了数据服务器节点热点的消除。

2.3.3 智能路由交换

路由是指分布式缓存集群中虚节点在数据服务节点上的分布情况。分布式缓存平台构建了一个分布式锁同步系统来存放全局路由表,这张路由表是分布缓存集群路由管理的基准表,路由变更时必须要首先修改这张路由表中对应的路由记录。

为避免每次路由查找都需要查询分布式锁服务,各数据服务节点在本地同时存储全局路由表,路由查找时可直接在本地进行。这样带来的一个问题是本地路由记录可能已经过期,因此在路由记录中增加修改时间戳来进行路由记录版本的控制,举例说明:

(1)第10号虚节点的路由信息是:存在3个副本,依次存放在服务节点A、B、C上,该条路由信息在集群中所有节点本地都有存储。

(2)A节点发生故障宕机,在A宕机期间,操作员对10号虚节点的路由记录进行了手工调整:仍然是3个副本,依次存放在服务器节点A 、D、C上,集群中除A节点外都完成了本地路由记录的更新。

(3)此后A恢复了服务,A节点本地10号虚节点的路由记录成为一个过期的记录,当A节点收到落在10号虚节点上的数据读写请求时,就会对B、C节点的副本进行访问,访问时会带上本地10号路由记录的时间戳,B、C节点收到访问请求后会立即通知A路由信息已经过期,通过这样的路由交换机制,A快速地完成了本地路由记录更新。

上述例子中路由交换是通过数据访问请求被动触发,同时集群中每个节点的路由管理模块也会定时启动路由交换,通过这种类似病毒传染式的智能路由交换,路由变更能在集群所有节点中快速生效。客户端API的路由记录也采用同样的方式:客户端API本地缓存路由信息表,在数据访问的同时完成和服务节点的路由交换,大大提高了路由查找的效率,降低了数据访问的时延。

2.3.4 成员关系维护和故障检测

分布式缓存将节点分成两类:种子节点和普通节点。

种子节点是系统配置时,需要预先从所有节点中选出若干个节点,它们的职责是指挥系统的链路建立和拆除等。

普通节点启动后,根据配置向种子节点主动建链,种子节点对连接上的普通节点进行统一管理,根据一定的原则比如按照IP数值的大小,通知普通节点完成互相之间的建链,种子节点互相之间也根据这个原则完成两两之间的连接。图6描述集群成员关系建立的过程。

(1)分布式缓存当前有节点1、2、3、5共4个节点,相互之间两两存在链路,节点1、2是种子节点,节点0、3、5是普通节点。

(2)普通节点4新加入缓存集群,它首先根据配置主动连接种子节点1和节点2。

(3)种子节点1发现当前有普通节点0、3、5和它建立了链路,当普通节点4连接成功后,它根据节点大小原则指挥节点4连接普通节点 0 和3,同时指挥原有普通节点5连接节点4。

分布式缓存通过上述机制维护集群中节点的成员关系,最终在各节点间形成网状的全连接模型,两两之间具备通信链路,任何节点故障和恢复都能够快速被集群中其他节点检测到。

3 分布式缓存助力物联网平台云化

3.1 分布式缓存的优势和解决的问题

分布式缓存具有明显的技术优势。分布式的架构从架构上保证了良好的扩展性,当性能不够时,可以轻松地通过添加新节点的方法扩展性能;因为良好的扩展性,所以分布式缓存的容量可以随着节点规模的增大而呈线性增加,容量不会成为系统的瓶颈;分布式缓存采用的是基于Key-Value的简单存储方式,缓存的架构和以内存为基础的访问方式使得分布式缓存性能非常高,单节点每秒可以达到24万多次的读写操作;分布式缓存所使用的多份副本复制的方法,避免单点故障;同时无中心化的架构和一致性Hash的数据分布算法,使得局部节点的损坏不会影响整体集群的可用性,把故障的影响降到最低。

目前的应用在部署运行过程中常会遇到一些问题:第一,单节点不能满足性能要求时,需要扩展到多个节点,通常采用按号段的方式进行扩展,此种扩展方式不具有通用性,与各个应用密切相关,开发和维护的成本也较高;第二,在不同的物理节点的应用上共享数据,通常通过文件的方式或同步的方式进行共享,但是这在性能和一致性的处理上存在较大的风险和困难;第三,因为多个节点同时访问数据库,使得数据库和磁盘I/O成为系统的瓶颈,通常使用单节点的缓存方式来解决,这样一方面会造成系统资源的浪费,另一方面也使各个节点中缓存一致性的处理也非常复杂;第四,应用节点的应用程序意外退出重启动后,如何保证已有的会话不掉线,往往通过写文件的方法实现,这时磁盘I/O以及系统初次的加载都存在性能瓶颈。把分布式缓存引进应用后,可以方便地帮助应用解决这些问题。应用通过调用分布式缓存提供的API接口,把关键的数据放到分布式缓存中,而自身重点关注应用逻辑的处理,这样可以轻松打造出高性能的、可扩展的、高可靠的分布式应用系统,通过标准接口的封装,对外提供云服务。

3.2 分布式缓存在物联网中的应用

物联网的出现是信息通信技术(ICT)的新挑战。物联网无所不在,它可以使所有的物体,从洗衣机到冰箱、从房屋到汽车通过物联网进行信息交换。物联网技术融入了射频识别(RFID)技术、传感器技术、纳米技术、智能技术与嵌入技术。物联网技术将是改变人们生活和工作方式的重要技术。物联网主要包括3个层次,如图7中所示。第1个层次是传感器网络,也就是目前所说的包括RFID、条形码、传感器等设备在内的传感网,主要用于信息的识别和采集;第2个层次是信息传输网络,主要用于远距离无缝传输来自传感网所采集的巨量数据信息;第3个层次是信息应用网络,该网络主要通过数据处理及解决方案来提供人们所需要的信息服务。

物联网业务网关属于第3个层次,如图8所示。它是实现物联网应用和物联网终端智能连接的桥梁,能够提供接入认证、智能路由、业务计费、能力接入、服务质量(QoS)服务保障等核心功能。支持通用分组无线业务(GPRS)、短信、有线接入等多种网络接入方式。物联网业务网关汇聚所有的机器到机器(M2M)终端消息,除了支持标准协议终端的消息处理外,对非标准协议终端也提供IP层路由转发和业务鉴权功能。因此对业务网关相关的性能提出了极高的要求。

中兴通讯物联网业务网关采用多模块架构,通过引入云计算分布式缓存平台,使其具有极高的吞吐率,保证了网关的高并发处理能力,系统在两个刀片机框满配置的情况下,可达到18万条/秒的报文转发速率。分布式缓存的应用,使系统支持数据动态迁移,在个别节点故障不会造成事务的中断。

4 结束语

物联网与云计算存在着密不可分的关系。一方面,物联网的发展离不开云计算的支撑。从量上看,物联网将使用数量惊人的传感器(如数以亿万计的RFID、智能尘埃和视频监控等),采集到的数据量惊人。这些数据需要通过无线传感网、宽带互联网向某些存储和处理设施汇聚,而使用云计算分布式缓存等系列技术来承载这些任务具有非常显著的性价比优势;从质上看,使用云计算系列技术对这些数据进行处理、分析、挖掘,可以更加迅速、准确、智能地对物理世界进行管理和控制,使人类可以更加及时、精细地管理物质世界,从而达到“智慧”的状态,大幅提高资源利用率和社会生产力水平。可以看出,云计算凭借其强大的处理能力、存储能力和极高的性能价格比,很自然就会成为物联网的后台支撑平台。另一方面,随着物联网针对智能交通、智能医疗、智能电网等领域解决方案的落地,物联网将成为云计算最大的用户,为云计算系列技术取得更大商业成功奠定基石。

云计算技术及应用篇(9)

中图分类号:TP392文献标识码:A文章编号文章编号:16727800(2013)0010013803

基金项目基金项目:湖北省教育厅科学技术研究计划指导性项目(B20128012)

作者简介:刘河(1981-),男,汉口学院信息科学与技术学院讲师,研究方向为网络安全、云计算;陈宇(1978-),男,博士,湖北第二师范学院计算机学院讲师,研究方向为嵌入式系统。

0引言

云计算就是通过整合、管理和调配分布在互联网中的所有计算资源,以统一的界面同时向用户提供服务。互联网提供的各种计算形式的应用以及提供这些服务的数据中心和软硬件基础设施、提供的服务称为软件即服务,数据中心的软硬件基础设施即为云[1]。这种虚拟化资源提供计算的方式使得服务通过互联网传播,而用户不需要知道云计算服务的提供者和提供方式。因此,云计算具有规模大、可靠性高、用户透明、可扩展性强、提供按需服务和廉价等特点,而实现以上需求的前提条件,就是云计算系统应该具备足够大的规模和处理能力,以满足大量的数据访问、数据存储和来自不同网络的请求。

1云计算对数据库存储技术要求

传统的关系型数据库结构化的特点,遵循严格定义的关系模型,可以进行各种复杂的查询请求,并按实务处理进行读写操作,但这些优点在面向海量数据处理时却成为了制约其发展的掣肘[2]。关系数据库通过规范化能够保证没有信息冗余和缺失,但因此也会导致在进行数据查询时涉及到多表的Join查询机制,使得数据库很难扩展。另外,随着系统数据量达到一定规模,由于其系统逻辑较复杂,死锁等并发问题会时有发生,导致读写速度下降严重。此外,传统的存储架构不具有良好的可扩展性,当数据量增加时,只能一味地添加高端存储设备,这样可以暂时缓解问题,但是没有从根本上解决海量数据存储带来的挑战。

因此,在云计算时代,对数据库存储技术提出了更多的需求,主要体现在[3]:为了更好地提供用户体验,提升用户的满意度,需要快速的请求反应;需要实现数据和流量海量支撑;系统管理员希望能够对分布式应用实现更简单的部署和管理;企业在硬件、软件和人力等各方面能够大幅度地降低成本;高可扩展性和高可用性。

此外,对数据库事务的高一致性、读写实时性、复杂查询等方面反而不再是首选考虑的需求[5]。

2非关系型数据库

2.1NoSQL特点

NoSQL这个术语最早出现于1998年,从2007年开始NoSQL作为一种新型数据库技术的统称开始被业界关注。这个名称并不是完全对关系型数据库的否定,它只是代表一个新的思想:现代的应用场景已经不是单一的关系型数据库能够完全适应得了的,数据库领域要开始新的变革。它主要强调为一个可扩展的松耦合类型数据模式,遵循CAP定理,即指一个分布式系统最多只能同时满足一致性、可用性和分区容忍性中的两个特性[4]。

NoSQL松耦合类型、可扩展的数据模式主要体现在不再使用关系型数据库的固定的二维表元组,而是keyvalue键值对、列、文档、图表等等。NoSQL的数据模式没有严格的定义,不要求在存储数据前就确定数据模式,在系统运行中也可以动态更改。这些特点使得它非常有利于存储Web应用中占绝大部分的半结构化和非结构化数据。另外,NoSQL本质上就是为分布式系统设计的,支持横向扩展,能够适应飞速增长的海量数据,并且在分布式架构下可以达到很好的性能。

NoSQL分为四层,如图1所示。①接口层,指数据库面向编程语言的接口,包括当前流行的大规模并行计算MapReduce、键值存储中基本的GET/PUT操作等;②数据逻辑模型层,指数据库的逻辑模型,包括键值存储、列簇存储、文档存储以及图结构存储;③数据分布层,指数据库的分布式架构,NoSQL数据库支持多数据中心、动态部署;④数据持久层,指数据库的持久化存储,包括基于内存、硬盘和同时基于内存与硬盘的持久化存储,同时还包括定制可插拔的持久化。

2.2NoSQL 数据库分类

目前的NoSQL数据库主要分为三类:

(1)KeyValue数据库。主要满足高性能的读写需求,例如Redis、TokyoCabinet。

(2)面向文档的数据库。主要满足高性能的海量数据存储和访问需求,主要包括MongoDB和CouchDB、MongoDB等,主要解决海量数据访问效率问题。

(3)分布式计算数据库。主要满足高可扩展性和高可用性需求,主要包括Cassandra和Voldemort等。

2.3几种常见的NoSQL数据库

2.3.1Cassandra

Cassandra是一个混合型的非关系的数据库[5]。其主要功能比Dynomite(分布式的KeyValue存储系统)更丰富,但支持度却不如文档存储MongoDB。它是一个网络社交云计算方面理想的数据库,以Amazon专有的完全分布式的Dynamo为基础,结合了Google BigTable基于列族的数据模型。

2.3.2Hadoop

Hadoop是一个能够对大量数据进行分布式处理的软件框架[6],以一种可靠、高效、可伸缩的方式进行处理。它维护多个工作数据副本,确保能够针对失败的节点重建,且以并行的方式工作,通过并行处理加快处理速度;另外具有可伸缩性,能够处理PB级数据。此外,它依赖于社区服务器,成本低,任何人都可以使用,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。

2.3.3CouchDB

CouchDB的开发语言是Erlang,它继承了Erlang语言的优势[7],如具有很高的容错和分布式特性等。CouchDB是由一系列语义上自包含的文档组织而成的,且它的文档是没有模式的,这种无模式特点更适合对现实中的数据进行建模,当需要根据应用的需求做修改时比关系数据库要简单。CouchDB中没有主键和外键,没有Join操作。通常关系通过视图而非关系数据库中的SQL来定义。与此同时,基于MapReduce编程模型的视图不是以SQL来查询、索引文档,并以RESTful API的格式提供服务,所有的读写能力都可以通过简单调用它的HTTP请求来实现。

2.3.4MongoDB

MongoDB其设计定位是在具有key/value存储方式的高性能和高度扩展性的同时,具备传统的关系型DBMS的丰富功能[8]。它使用数据结构松散的BSON格式,但由于BSON对象在MongoDB中有16MB大小的限制,因此通过将一个大文件分割成为多个较小的块对象存储。存储模式上以文档为单位存储数据,每个文档内的字段允许有不同的设置,可以动态修改数据结构模式。使用自动分片机制实现分布式扩展,可以将数据库中的集合、文档分布存储在多个数据库节点。此外,支持全类型索引,使用的查询语言语法类似面向对象査询语言。

MongoDB的反范式模式设计相比规范化模型设计,往往因嵌套避免了关联,査询效率更高。但是也存在不足:①自动分片机制容易形成磁盘碎片;②由于使用MongoWireProtocol通信协议是明文传输的,安全传输方面存在缺陷;③其查询优化算法对语义支持很少。

2.3.5Memcached

Memcached是一个高性能的、分布式的内存对象缓存系统,它实际上就是一个简单的内存服务器,能够为应用程序存储数据提供一个缓存层,通过缓存数据库查询结果,减少数据库访问次数以提高动态Web应用的速度。当进行数据读操作时,首先从缓存中查找,如果缓存中不存在再从数据库中进行查找,可以有效地提高系统的性能。基于Memcached的系统通信机制则采用基于libevent的一个事件触发的网络库,客户端通信并不使用复杂的XML等格式,而使用简单的基于文本行的协议。它也存在一定的不足:①当数据修改时,只修改主数据库中的数据,从数据库中的线程会发出基于日志的复制请求,该异步的过程会导致一定的数据延迟;②Memcached中的数据是存储在内存中的,当某个节点出现宕机时,会出现数据丢失。

3比较

前面我们提到的各种主流开源的NoSQL数据库都不是关系型的,它们以平立的方式与服务相连,与传统的关系型数据库连接没有太多不同,但却无需清楚存储数据所用的系统类型,并且能够获得相对低的延迟、较高的扩展性和高可用性的保证。这里对它们进行简单的比较:

(1)它们大多能够在分布式环境中运行,本质上来看都不完全是事务性的,也都牺牲了一些高级查询能力为了换取更佳的性能。多数情况下这些数据库可以通过对象调用替代SQL来检索,更重要的是云体系结构具有不同于关系型结构的属性,关系更多的被忽略,在云体系结构里,数据以集群的方式来看待。

(2)Cassandra主要是基于分布式的数据库,而couchDB和Mong0DB不仅支持分布式同时主要是基于海量数据存储的数据库,而且它们都是面向文档的数据库,更加适合存储图片元数据这种半结构化数据。另外,基于CouchDB的第三方开发库也很丰富,且写性能突出。

(3)MongoDB因为内存映射文件类型的缓存读性能较优异,Cassandra的主键key和列缓存能够有利于频繁读取数据,特别是0.8版本增加了off-heap(超越JVM内部Heap)列缓存特性,显示它有相当的读取性能。主键key缓存保存每一列所有的Key,因此不再需要查询SSTable索引文件,得益于行缓存,也不必从SSTable中读取行数据。

(4)Cassandra写可变数据到commit日志,然后内存inmemory Memtable表更新,速度较之会慢些,但是更安全。

从以上比较分析可知,可根据不同的应用特点选择不同的NoSQL。

4结语

云计算作为一种新兴的技术革命,带领我们进入了海量数据信息时代,传统关系型数据库的存储架构存在扩展性较差的缺点,无法满足在用户数量及服务性能需求上的要求,而NoSQ表现出来的可扩展、松耦合的数据模式,及在易用性、高度伸缩性、支持海量数据等方面所表现出来的优点,使其在云计算领域被广泛应用。

参考文献:

[1]LUIS M VAQUERO,LUIS R MERINO,JUAN CACERES,et al.A break in the Clouds: Towards a Cloud Definition[J].ACM SIGCOMM Computer Communication Review,2009, 39(1): 5055.

[2]COULTER T. Costing: non traditional data stores versus traditional DBMS technologies[C]//Technology Management in the Energy Smart World (PICMET), 2011 IEEE Proceeding.

[3]RAJKUMAR B, CHEE S Y, SRIKUMAR V.Marketoriented cloud computing:vision,hype,and reality for delivering IT services as computing utilities[C]//Proceedings of the 10th IEEE HPCC. Dalian: ACM Press, 2008: 513.

[4]JING H, HAIHONG E, GUAN L, JIAN D. Survey on NoSQL database[C]//Pervasive Computing and Application (ICPCA), 2011 6th IEEE International Conference,2011:363366.

[5]郭鹏.Cassandra 实战[M].北京:机械工业出版社,2011(6):3859.

[6]TOM WBITE . Hadoop权威指南[M].第2版,周敏奇,译.北京:清华大学出版社,2011.

云计算技术及应用篇(10)

中图分类号:G250.7

在互联网信息和各种数据高速增长的今天,商业计算和科学工程需要更加强大的数据处理和存储技术。因此,需要对当前计算程序进行扩展,使其达到容易学习、方便使用、满足要求的目的。在这种情况下,云计算概念被提了出来,云计算技术在一定程度上也达到了节约成本和实现可扩放性的目的。因为云计算技术强大的服务能力,使其迅速成为当前产业界和科学学术界关注研究的焦点和热点。

1 云计算技术的相关概述

1.1 云计算的定义

当前学术界并没有关于云计算的统一定义,总结现有的说法,可以认为云计算系统是以收费使用的形式向用户提供各种服务的分布式计算系统。云计算系统实现信息永久存储,在使用时也可进行缓存的计算技术。云计算技术对应的客户端可以是笔记本、界面器、手持设备等,很大程度上满足了动态迁移的要求。

1.2 云计算系统的特点

云计算系统的特点可以概括为四个方面:支持虚拟化、提供服务质量保证、高可靠性实用性和可扩放性、自治性。

(1)支持虚拟化。云计算系统最基本的特点就是虚拟化,虚拟化的存储器,虚拟机的服务器等,也由此大大提高了资源的利用率。

(2)提供服务质量保证。云计算系统能够根据用户的要求对系统做出适当调整,保证服务质量。

(3)高可靠性、实用性和可扩放性。对用户而言,云计算系统必须是可靠的,同时还能随时随地地提供用户所需要的服务,从而保证其可靠性、实用性和可扩放性。

(4)自治性。所谓自治性是指云计算系统的管理对用户来讲是透明课件,系统的不同部分可以进行自动优化配置,从而实现按需提供服务。

2 云计算技术的关键问题

云计算的思想可以追溯到20世纪60年代,经过几十年的发展,云计算技术已经有了很大的进步,在云计算技术的发展过程,所遇到的关键问题可以归结为如下几个方面。

2.1 虚拟化技术

虚拟化技术是云计算技术发展中的首要关键问题。云计算是虚拟的存储服务器,同时也是通过虚拟化的存储服务技术,支持多个虚拟机运行多个操作系统,从而大大提高了服务器的利用率,同时也由于虚拟特性,实现了灵活可变、可扩展性的平台服务。随着虚拟化技术的发展和应用,如何对虚拟资源进行管理逐渐成为当前研究的热点之一。当前采用广泛的方法是采用两级调度的方法将VM的管理集成到批调度器中,从而向用户提供最大限度的调度服务,缺点是不支持虚拟资源的预定服务,同时完成严格的预定资源服务租赁也是非常困难的。

当前的云系统如Scientific Cloud、Amazon EC2等都是采用虚拟样机的形式来满足用户对计算资源和计算能力的要求,但是用户如何根据自己的要求整合这些虚拟机使其成为一个工作群还是一个有待改进的问题。一般采用的方法是通过对虚拟机的IP地址、安全信息等上下文环境的分析,提出一种可以在多种虚拟机之间快速自动地部署上下文环境的机制,从而满足用户的特定要求。

2.2 网络和安全

在计算机发展历程中,曾经发生过的几起信息泄露问题,无不对用户造成了严重的损失。安全性永远是用户最关注的问题。用户在使用云计算系统服务时,需要上传数据并对数据进行存储,云计算系统的安全至关重要。目前,云计算技术还处于初级发展阶段,由于云计算是分布式的体系结构,不仅要进行数据的存储,还要进行消息的传递、交互和共享,这就使得云计算体系的安全性问题变得更加复杂。目前有两种较好的解决方法,一是通过减少敏感数据的传输,降低云计算使用的风险,要保证在不同的环境下都要减少敏感数据的传输与存储;二是从网络拓扑结构和传输数据堵塞控制的角度进行考虑,提出了语义控制策略语言,来描述不同客户的存取策略,不同的客户对于云计算需要提供的服务是不一样的,因此需要灵活的存取机制,这也为安全提供一个途径,通过不同的存取机制,来增强操作的灵活性和数据的安全性。

2.3 云计算系统仿真

云计算系统提供的必须是安全可靠、可扩展性的服务,因此必须对不同的基础设施和服务进行度量和评估,以保证满足相关协议的要求。在云计算系统的相关基础设施搭建之前,为了确保其可行性,同时减少成本,有必要对其复杂的管理系统和运行机制进行仿真。如何开发出科学合理的仿真软件,使其能对前期的运行机制和管理系统进行仿真,还能实现后期的追踪和分析,这是一件极具挑战性的问题。当前的研究中提出了不同的解决方案,例如云计算仿真软件CloudSim、SPECI仿真工具等,都达到了很好的效果,但是还存在一定的缺陷,这是我们需要继续坚持解决的问题。

2.4 云计算系统的成本

作为一种拥有超强数据处理能力和存储能力的计算系统,云计算系统的经济成本也是非常高的,这在一定程度上也阻碍了云计算系统的普及使用,因此如何制定出精确的成本模型变得尤为重要。影响成本模型的因素有很多,比如服务器、软件、网络元素和人为因素等不同的因素对模型的影响是不一样。如何完整地考虑各个方面的因素,确定其不同的影响权重系数,从而制成精确的成本计算模型,对于降低云计算系统的成本是不可或缺的。

3 云计算系统在高职院校图书馆中的应用

云计算技术的超级计算和海量存储能力,使得其成为当今数字图书馆研究的热点问题,同时也为读者提供了安全、高效的云个性化阅读服务。云计算系统在高职院校图书馆中的应用主要可以从两个方面来介绍:国外和国内的图书馆中的应用。

3.1 云计算系统在国外高职院校图书馆中的应用

国外第一个开放的图书馆自动化系统产生于1999年,它的目标客户是小型的学校图书馆或者专业图书馆,它的出现也为后续大型的应用奠定了基础。随后在2006年,Amazon推出了弹性云计算EC2服务,主要的目标客户是各种组织机构,服务内容为存储服务和计算资源服务。目前,亚马逊云计算服务已经得到了广泛的应用,很多大型的图书馆都在使用,如哥伦比亚区公共图书馆。

被誉为业界最有影响的莫过于OCLC将“基于云”的概念服务引入了图书馆的系统中,这是图书馆界的第一个专业云计算服务,将会有广泛的发展前景。

3.2 云计算系统在国内高职院校图书馆中的应用

在国内,云计算系统在高职院校图书馆中的应用还处于理论研究的阶段。国内有关于“云计算和图书馆”的定期研讨会表明国内的图书馆界已经开始充分重视云计算的发展,也预示着云计算系统将在图书馆界中产生重大影响

目前,已经基本建成了CALIS云服务平台的框架,同时也在全国的多数高校中构建了分布式的数字图书馆服务平台。借助云计算平台,图书馆可以即时地为用户提供最新信息,同时也简化和压缩了咨询信息的服务过程,提高了图书馆的管理效率,减轻了图书管理员的管理任务。用户只需拥有一个可以和云计算端链接的终端设备,就可以轻松地获取自己所需要的信息,大大降低了用户获取信息的难度和成本,因此,云计算系统在图书馆界的应用,不仅最大限度地实现了资源共享,还大大简化了日常的信息获取过程。

4 结束语

云计算系统具有超强计算和海量存储的能力,同时还有方便使用、按需支付的特点,使其具有非常广阔的应用前景,对于图书馆来说,云计算系统的能力和特点正是其所需要的,即使当前云计算在图书馆中的应用还处于理论研究阶段,但是随着相关工具和技术的不断改善,相信云计算图书馆不久就可以更好地服务于各高职院校的学子们,服务于每个需要云计算系统的人们。

参考文献:

[1]高婷.云计算给图书馆带来的发展机遇[J].计算机光盘软件与应用,2011(19):104-105.

[2]胡英俊.云计算技术在图书馆中的应用探讨[J].前沿,2013(14).

云计算技术及应用篇(11)

【中图分类号】G【文献标识码】A

【文章编号】0450-9889(2015)06B-0004-02

计算机云技术作为新时代信息化网络技术中的科学产物,必将成为我国未来的网络技术发展方向。计算机云技术以其巨大的计算机技术优势,在教育行业中逐渐被应用。但是,在计算机云技术的实际应用过程中,仍旧存在诸多困扰教育工作者的问题,这些问题也成为现代教育所面临的难题。

一、计算机云技术的特点

计算机云技术较之以往的信息化技术具有其特殊的优势,云技术的这些特点使其成为了信息化发展道路上不可或缺的重要组成部分。在计算机云技术实际应用于现代教育的时代背景下,云技术的这些优势与特点必将为学生的学习与生活带来更多的便捷。

1.在计算机云技术的实际应用过程中,这一技术可以根据用户系统需求的不同进行相应的规模调整,同时在实际应用过程中还可以实现计算机系统与云平台的虚拟技术进行有效结合,这为计算机云技术在我国的推广及应用创造了有力条件。

2.在计算机云技术的应用过程中,用户通过云平台可以享受到无限的信息化资源,为用户的工作与生活提供极大的便利。云技术以其庞大的数据中心与信息网格为用户创造了无限的信息资源共享的前提下,提供了切实的优质计算服务。

3.在云技术的实际应用过程中,可以有效降低计算机网络系统的运行成本,有效改善当下国内计算机网络教学中存在的高成本运行问题,为我国普及信息化教学提供了良好的条件。

4.基于计算机云技术在实际应用中不存在网络技术与底层物理之间的联系问题,所以,用户可以直接通过云平台直接使用自己需要的信息,而不用对这些信息进行理解。这在实际使用的过程中,为用户提供了高效快捷的平台信息化服务。

5.计算机云技术的安全性问题也是当下信息化服务过程中最重要的因素。云技术在实际应用中拥有全球较为先进的数据管理中心,使用户在通过云技术处理和分析信息的过程中得到了信息数据的有效保护,避免了用户数据丢失和病毒入侵等问题,实现权限管理的严密性,为今后计算机云技术更好地服务社会创造了良好的安全保障。

二、云技术在国内教学中的应用现状

计算机云技术作为新型计算机网络技术,在我国教育行业进行推广的过程中取得了良好的成绩。2008年Google在台湾开展了计算机云技术的推广工作,通过与台湾多所大学建立合作关系,将这种先进技术快速地推广到台湾的大部分院校及教育机构。2008年4月,清华大学成为中国大陆首所参与Google开展全球化计算机云技术合作的高校。通过与Google进行合作,清华大学在计算机云技术实际应用于教学的过程中取得了极大的教学突破。计算机云技术在实际应用过程中为学生提供了数以亿计的数据,并对它进行分析处理。这个技术也为大学教授的资料整理加工提供了便捷条件,有效保证了资料数据的安全性,为学校构建信息化校园提供了充充的保障。

在国内当下的教学过程中,包括北京大学、华中科技大学、上海交通大学、西安交通大学等多所高校都在教学过程中应用了计算机云技术。通过大规模的数据处理方式来为学生创造更加优质、更加便捷的学习环境。但由于计算机云技术在国内的发展时间较短,国内科学技术水平与国外仍存在一定差距,这些因素导致我国计算机云技术在我国教学中的推广与普及受到了一定的阻碍,造成目前国内计算机云技术在教学中的实际应用情况不佳,还没有推广和普及到中小学教育。

三、云技术在国内教学过程中遇到的问题

(一)个人信息泄露

在计算机云技术的实际应用中,使用者往往需要通过实名认证才能正常使用计算机云技术的相关应用软件,在这一过程中极易造成用户的个人信息泄露。在当下网络环境错综复杂的情况下,个人信息的泄露极易造成各种安全隐患,从而为计算机云技术的使用者带来极其不利的影响。比如西安市某中学在实际应用计算机云技术辅助教学的过程中,由于处理不当,导致学生与教师信息大量泄露,出现资料被盗用、用户密码被更改等情况,严重危害到了学校师生的切身利益。因此,在国内的计算机云技术实际应用于教学的过程中,个人信息泄漏问题成为计算机云技术管理者与研究者急需解决的问题之一。

(二)云技术运营成本较高

计算机云技术在现代教育的应用实际中,因其高效性普遍受到了社会各界的关注与重视,但是,遍观国内教学中计算机云技术的实际应用状况,可以明显地发现,计算机云技术在现代教育中的实际应用往往只是存在于各大高校以及发达城市的中学课堂之上。国内计算机云技术在运营过程中普遍存在运营成本较高的问题。比如,抚州市某高校,在实际教学中尝试应用计算机云技术进行课堂教学,通过3个月的阶段性试验,学校的实际教学质量通过应用计算机云技术而获得了提高,但是在这3个月内,计算机云技术教学所耗费的运行成本占了学校总支出的40%,这种较高的运行成本成为计算机云技术在实际教学中普及与推广的抑制因素。因此,如何有效降低计算机云技术在实际教学中的运行成本,成为当下急需解决的问题,这一问题也成为制约计算机云技术在我国教育行业中有效推广的重点因素。

(三)云技术人才稀缺

计算机云技术作为高新科技,在现代教育的实际应用过程中需要大批的技术人才负责运营,需要相应的计算机云技术设备管理及维护人员,也是这一技术在应用过程中不可或缺的重要因素。遍观国内计算机云技术的实际发展状况,我国当下严重缺乏相应的计算机云技术从业人员,特别是云技术研发人员与技术创新人员更是极其匮乏。在国内教学领域,云技术的教学仍旧处于初级阶段,没有形成完善的教学体系,使得学生对云技术一知半解,无法进行深入探究。比如,德阳市某民办高校利用计算机云技术进行辅助教学的过程中,由于缺乏相关人员的维护与管理,在应用的半年内,校内多次出现计算机云技术终端被恶意篡改、盗用的情况,也多次出现长时间的计算机网络系统故障,严重影响到师生正常的校园生活。

四、云技术在教学应用实际中的建议

随着计算机云技术的逐渐普及,其计算机网络化的运营模式以及先进高效化的技术特点使其逐渐被应用于社会发展中的各个方面。教育作为世界文化经济发展的重中之重,教育问题一直是困扰世界上大多数国家的难题,随着当下科学技术的飞速发展,越来越多的国家开始尝试性地将计算机云技术应用于教学实际,大量的信息产业开始与各个高校之间建立合作关系,逐步着手培养计算机云技术方面的人才。因此,如何有效地在国内教学中更好地应用计算机云技术成为当下社会急需解决的问题,笔者根据相关文献,经过长期的总结与探索,为今后的计算机云技术教学应用给予几点建议。

(一)云技术安全性的加强

计算机云技术作为信息化网络技术不断发展中所形成的高科技产物,这种技术实际应用于教育工作是时展的必然要求。通过计算机云技术的广泛应用可以为国内教育提供更加优质的教学环境,为教学工作顺利开展提供有力保障。但随着计算机云技术在教学中的逐渐应用,学生及教师等使用者的个人信息安全问题,成为当下社会所关注的问题。因此,加强云技术安全性成为这一技术在推广过程中需要解决的重点问题。

在教学过程中,计算机云技术需要对其自身进行系统管理上的完善,保证用户在使用云技术软件的过程中不会发生个人信息泄露现象。同时,对云平台进行有效约束,坚决实行实名注册,防止不法分子利用云平台进行危险或有害操作,进一步保障使用者的个人安全,真正为计算机云技术在今后国内的发展奠定安全的基础。

(二)降低运营成本

计算机云技术作为高新科技,在国内教育行业的实际应用过程中,只有不断降低其运营成本,才能使计算机云技术得到全面推广及应用。首先,对计算机云技术设备的应用,采取国外的先进经验,将计算机云技术设备进行精简化,依靠网络云平台的形式实施云技术辅助教学。其次,在计算机云技术的实际应用过程中合理安排相关工作人员在校园内定期进行维护,有效保证云技术设备的正常运作。计算机云技术的相应管理也是有效降低其运营成本的重要方式,通过这些方式为今后计算机云技术在我国教育行业的普及提供有力保障。

(三)大力培育云技术人才

计算机云技术作为高新科技,是分布式计算机技术的一种新形式,其技术原理是计算机通过网络将信息量巨大的计算处理程序有效分拆为无数个小单位的子程序,再将这些子程序交由大量服务器所构成的搜索系统进行计算与分析,最后将所得出的处理结果回执给计算机用户。我国针对这一技术,应该加大人才培养力度。首先,加强对云技术的了解与认知,建立完善的教学体系,为培养云技术人才提供良好基础。其次,加大对云技术的研究,有效合理地借鉴发达国家先进的云技术应用经验,发展我国云技术。

综上所述,计算机云技术可以为我国现代教育创造更加美好的未来,针对国内云技术在教育行业中的应用现状,我国要在云技术上进行更多地研究,努力培养相应的云技术人才,在计算机云技术的应用上进行不断创新。只有这样才能真正为我国现代教育提供优质的保障。

【参考文献】

[1]黄胜利.探索云技术的应用与发展[J].河南教育,2014(14)

[2]卢飞.虚拟云技术在计算机实验室建设管理中的应用[J].中等专业学校,2013(25)