×
地学前缘

基于云计算的地学云系统设计

基于云计算的地学云系统设计。Design of aGeologicalCloudSystemBased onCloudComputing李嘉城。陈华根LIJia—xiao,CHENHua—gen(同济大学海洋地质国家重点实验室。上海)(StateKeyLaboratory ofMarineGeology,TongjiUniversity,Shanghai,China)摘要:云计算已经成为工业界和学术界讨论的热点话题。由于其应用范围广泛,在地学研究领域必然能够发挥重要作用。本文首先讨论了云计算的发展、层次结构和特点,给出了云计算的一个定义;然后从理论上提出建立地学云系统(GCS)来解决地学问题,并从系统架构、关键技术等方面进行了详细论述;最后以地学的三维可视化为例,从理论上设计了GCS在解决地学问题过程中的具体应用。Abstract:Cloud computing has become the hot topic in industry and academic circles.It plays an im~ portant role in geological research due to its wide use.This paper discusses the development,structure levels and characteristics of cloud computing and proposes a definition,puts forward a plan theoretically to b uild a geological cloud system(GCS)to solve practical geological problems,and then describes the design of this system from the aspects of system structure,key technology,ete.Finally,we take geo— logical3D visualization as an example to theoretically solve the specific applications ofGCS.关键词:云计算;地学;地学云系统;体系架构;设计Key words:cloud computing;geo—science;geological cloud system;system structure;design doi:10.3969/j.issn.1007—130X.2011.06.021中图分类号:TP391文献标识码:A引言2007年底,IBM宣布了云计算计划n],云计算的概念很快便成为了工业界与学术界等领域的讨论焦点。目前,已经有很多“云计划”的实例,如Amazon的弹性计算云[2]、IBM和谷歌联合进行的“蓝云”计划、清华大学透明计算平台l一朝等。日常使用的软件中也不乏云计算,如金山毒霸和360杀毒的“病毒云查杀”、搜狗输入法的“词汇云搜索”等。根据国际数据公司(1DC)的预测:到2012年,全球云计算的市场规模将从2008年的160亿美元增加到420亿美元,占总投人比例也将由4.2%上升到8.5%。另据预测,2012年云计算的投入将占IT年度投入的25%,到2013年则会占30%以上[4]。云计算正在成为一种发展趋势。云计算具有广泛的应用前景,可以应用于科研、网络安全、图形图像处理等多个领域。因此,云计算在地学研究中,尤其是地学研究的三维可视化方面也一定有用武之地。本文从理论上设计了一收稿日期:2010-08—02;修订日期:2010-11—28基金项目:中国深部探测技术与实验研究专项(SinoProhe一08—02)通讯地址:上海市四平路1239号同济大学海洋与地球科学学院511Address:Room511,School ofOcean andEarthScience,TongjiUniversity,1239SipingRd,Shanghai,P.R.China个用于解决地学研究过程中实际问题的地学云系统,以期在今后的研究中能够得到具体实现。2云计算概述2.1云计算的特点与定义对于云计算的层次结构,普遍认为分为以下三个层次[s“]:由底层硬件或虚拟机资源构建的基础设施即服务(Infrastructure as aService,简称 laaS),主要用来开发各种云计算应用软件平台即服务(Platform as aService,简称PaaS),基于云平台开发的各类应用软件即服务(Software as aService,简称SaaS)。如表1所示。表1云计算层次结构、参与者与实例┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓┃层次参与者实例┃┣━━━━━┳━━━┳━━━━━━━━━━━━━━━━━━━━━━━┫┃┃/\┃┃┃SaaS2┃专┃、世界各地的软件开发者Salesforee onlineCRM┃┃┃用┃┃┃PaaS┃┃Google、微软、苹果、Ya—GoogleAppEngine┃┃┃┃ hoo等WindowsAzure┃┃┃通┃┃┃ laaSE┃用┃—IB…M,萝当、升阳、惠普、Amaz。nEC2┃┃┃V┃7亚马逊等……~“┃┗━━━━━┻━━━┻━━━━━━━━━━━━━━━━━━━━━━━┛针对云计算,ArmbrustM[…、BuyyaR[8]、He- wittE…、WangLi—zhe[10]、陈国良‘11。、司品超‘垤1等分别给出了具有不同侧重方向且不同表述的定义,维基百科¨3。I对于云计算的定义也在不断更新,但尚没有统一的定义。结合上述定义总结出云计算应该具有下述特点:(1)虚拟化。云计算可以看做是一个虚拟资源池,单个服务器可以支持多个虚拟机运行多个操作系统和应用从而提高资源的利用率,当一个服务器过载时支持负载的迁移。一‘(2)网络化与分布式。云计算一般是以Web服务的形式来实现的。云计算可以部署在各种分布式平台上,其组织和协同可以在SOA架构中进行管理,各种服务网络是连通的。(3)数据冗余。云计算由大量计算机组成集群向用户提供数据处理服务。随着计算机数量的增加,系统错误也会大大增加,分布式存储方式的数据冗余可以保证数据的可靠性。(4)可编程性。随着研究和技术的发展,用户往往需要对海量数据进行处理,云计算必须提供一个简单易用的编程模型来并行处理用户的数据,从而更好地利用系统资源。(5)可扩展与迁移。云计算提供的服务应该是可以根据用户的需求进行扩展,并可以应用于不同操作平台之上的。(6)有偿服务。使用云计算是有偿的,支付不同的费用,可以获得不同的服务或者统一服务的不同等级。综合云计算的体系结构和特点,本文对云计算提出如下定义:云计算是基于软硬件通过网络向用户提供可靠的、可编程的、可扩展与迁移的多样化有偿数据服务。其本质是对虚拟资源池进行动态地部署、配置、重新配置以及取消等一系列服务。2.2主流云系统概述已有相关研究n””1对主流云系统的概况、体系结构等进行了详细介绍,总结起来主要有以下几点。2.2.1Google的云计算平台Google的云可以看成虚拟化实现的云计算基础架构(硬件架构),加上基于云的文件系统、数据库系统以及相应的开发应用环境。它由4个相互独立又紧密结合在一起的系统组成:GoogleFileSystem分布式文件系统,针对Google应用程序的特点提出的MapReduce编程模式,分布式的锁系统Chubby,以及大规模分布式数据库系统Big—Table。用户通过浏览器就可以使用分布在云上的GoogleDOCS等应用。2.2.2Amazon云计算方案Amazon将他们的云计算平台称为弹性计算云(ElasticComputeCloud,简称EC2),由名为Amazon网络服务(AmazonWebServices,简称AwS)的现有平台发展而来。EC2作为计算服务,与存储服务(s3)、消息传递服务(SQs)和数据集服务并列(SDB),是AWS所包含服务的重要组成部分。EC2建立在公司内部的大规模集群计算的平台上,用户通过网络界面进行操作,从而不必自己去建立云计算平台,节省了设备与维护费用。2.2.3IBM“蓝云”计算平台IBM的“蓝云”计算平台是一套软、硬件平台,将Internet上使用的技术扩展到企业平台上,使得数据中心使用类似于互联网的计算环境。平台由一个数据中心、IBMTivoli部署管理软件、IBMTivoli监控软件、IBMWebSphere应用服务器、IBMDB2数据库以及一些开源信息处理软件和开源虚拟化软件共同组成。2.2.4微软WindowsAzure计算方案WindowsAzure是构建在微软数据中心内提供云计算的一个应用程序平台,包含云操作系统、109基于Web的关系数据库(SQI。Azure)和基于.NET的开发环境。由于微软目前仍不能放弃桌面操作系统,因此微软倡导的云计算是“云+端”计算,终端由操作系统和桌面软件组成。2.2.5其他云系统概述除了上述主流云系统之外,比较著名的云系统还有美国伊利诺伊大学的GrossmanRL等提出的计算平台Sector/Sphere,澳大利亚墨尔本大学的BuyyaR等提出了一种面向市场资源分配的云计算平台原型,清华大学的张尧学教授研究团队提出的“透明计算平台”,美国芝加哥大学和佛罗里达大学提出的Nimbus,马德里大学提出的Open—Nebula以及美国加利福尼亚大学开发的Eucalyp— tUS等。3地学云系统的设计与应用3.1系统的提出地学工作者的工作目的就是通过已知数据解释地质构造。以地球物理勘探为例,由于地下结构不可见,通过正演和反演得到的结果往往是不合理的,这就需要通过地质建模进行检验。然而,不论是通过编程(如OpenGI。)还是使用第三方软件(如3DsMax、C—tech)建模的方法,都会受到数据分辨率、数据处理方法等软硬件方面的制约,最终得到的模型往往只有华丽的三维外表,但缺乏对地质体内部性质的描述(即“假三维”)。面对上述难题,基于云计算技术的发展,可以试图建立地学云系统(GeologicalCloudSystem,简称GCS),根据实际需要充分利用系统虚拟资源池中的数据服务,解决地学建模过程中的“假三维”问题。3.2GCS的架构结合云计算的层次结构与特点,GCS的基本思想是:通过Internet完成“有组织的虚拟地学资源池”的建立。处于组织内的用户通过连接到网络的客户终端发出服务需求,通过云计算向资源池请求所需数据,数据通过分布式计算得到结果后返回。所谓“有组织的虚拟地学资源池”有两个方面的含义:一是构成资源池的集群是具有一定“资格”的,即参与地学云计算的集群属于地学专业或者近地学专业,这样可以保证数据的可靠性;二是数据的存储虽然是冗余的,但是彼此之间不冲突,不矛盾,这就需要在系统架构的服务代理层进行相关处110理。GCS的层次主要分为用户终端、系统管理层、服务代理层和资源存储/应用层,其体系结构如图1所示。资源存储/应用层【(负载均衡调度)J图1GCS体系架构硬件、虚拟资源和操作系统是GCS基础设施的主要部分,同样也是整个系统最基本的部分。用户终端¨7]通过PC、笔记本、MID(MobileInteractDevice,简称MID)等设备通过用户交互接口连接到Internet。系统管理层负责负载的均衡调度。随着网络需求的发展,用户对网络的需求不断扩张。尤其是云计算过程中,用户的网络需求呈现多样化、复杂化。这就需要GCS具有一套多目标协同的负载均衡调度策略,从而能根据用户需求和当前虚拟资源池的使用情况灵活地调度和分配资源。例如:系统管理层设定多种因素结合的需求作业优先级规则,并赋予不同因素不同权重,依据权重大小排列各作业的优先级。服务代理层是GCS的核心层。该层首先需要完成用户的访问控制和需求检测,然后加载程序和进行相关服务的配置,赋予用户操作权限,探测虚拟资源状态,发送数据指令。用户可以根据自己的需求配置虚拟资源,提出数据需求、程序编译、调试等服务请求。此外,服务代理层应具有一套完善的数据检测机制,该机制保证数据冗余度、可靠性、准确性的检测。资源存储/应用层由互相连通的计算机群构成,组成了GCS的虚拟资源池,是GCS的“云层”。处于“云层”中的计算机负责数据的分布式存储和管理,响应服务代理层的数据指令,完成分布式计算,并将计算结果返回。本系统的目标是为地学工作者提供方便、易用的图形化云计算服务和应用平台,因此必须向用户提供友好交互的图形化服务环境,在统一图形用户界面下支持数据服务、程序编译和调试等过程。并且,应该为用户提供丰富、高效、可扩展的数据处理方法与算法,有助于提高研究效率。在用户交互接口方面,GCS应向用户提供扩展接口。由于该云系统为地学工作者服务,数据处理方法和算法以及相关的知识和服务可能会频繁更新,如果能够让来自全世界的研究人员都能够参与到GCS的数据服务完善工作中去,将大大提高该系统的功用,充分体现了其可扩展的特性,真正实现了“云”的意义。如果说在体系结构方面,GCS属于IaaS和PaaS层面,那么扩展接口将是使该系统向SaaS层面发展的重要途径,即从通用向专用发展。需要补充的是,GCS提供的服务应该是有偿服务。这里所指的有偿服务应该具有两个内涵:一是经济上的有偿,即通过支付费用获取相应的服务;二是信息上的有偿,即对该系统贡献越大,用户权限就越大,对服务所支付的费用就越低。这里“贡献”是指通过扩展接口,对其相关功能进行扩展、完善与优化等。3.3GCS的关键技术基于上述架构的GCS,符合云系统的特点以及本文对云计算的定义。在具体实现过程中,可能需要解决以下几个关键技术。3.3.1虚拟化技术虚拟化技术[1副是云计算的关键技术。通过虚拟化技术提供的灵活可变、可扩展的服务,可以大大提高服务器效率。GCS可以采用虚拟机的形式来满足用户的计算资源需求,用户可以根据自己的要求将这些虚拟机手动配置成一个工作集群,采用虚拟专用网络VPN技术实现可定制的网络环境。通过虚拟化技术,GCS能够根据用户的需求对系统作出调整,如用户需要的硬件配置、网络带宽、存储容量等。3.3.2数据存储与管理技术地学研究的数据通常是海量数据,为保证可用性、可靠性和经济性,GCS必须采用高吞吐率和高传输率的分布式存储方式来存储数据。当前主流的云计算存储技术主要有非开源的GFS(GoogleFileSystem,简称GFS)[19]和开源实现HDFS(Ha— doopDistributedFileSystem,简称HDFS)[2…。为便于实现该系统的可扩展性,可以采用开源的HDFS的数据存储方式。HDFS在存储数据时,将文件按照一定的数据块大小进行切分,各个块分布在集群的节点中。为了保证可靠性,HDFS会根据配置为数据块创建多个副本,并放置在集群的计算节点中。其中的具体技术可以参考Ha— doop的技术实现。在云计算的数据存储与管理技术方面,Google的BigTableL2¨值得进一步研究。BigTable是一种为了管理结构化数据而设计的分布式存储系统,采用客户端和服务器端的联合设计,使得数据可以扩展到非常大的规模(如PB级,即PetaBytes级),并且数据使用效率等性能能够最大程度地符合应用需求。GCS的数据存储与管理过程可以参考Big—Table的ChubbyFile——RootTablet——Meta dataTablets三级层次化方式,但是要对提高数据的更新速率以及进一步提高随机读速率做进一步的工作。此外,针对地学数据的特点,GCS应对组织内的数据进行标准化约束,建立统一的数据格式、冗余度和可靠性标准以及数据安全标准,以提高系统效率和安全性,这些工作需要地学专家通过共同研讨与交流来完成。3.3.3其他技术GCS实现过程中,还涉及到设备架设、改善服务、并行计算、系统监控等技术[2…。请参考相应文献,本文对此不一一叙述。3.4GCS在地学三维可视化方面的应用需要指出的是,本节讨论的内容仅仅作为GCS应用的一个实例,它在地学其他方面(如地球物理反演、地质勘探等)的应用需要在其实现过程中进行具体讨论。用户U通过实地测量获取了研究区P的重力异常数据,并且想通过三维方式进行可视化表达。但是,在建模过程中发现,仅仅通过测得的剖面资料,仅能够绘制该地质体的表面形态,而对其内部不能进行有效的表达和详细描述,且在对地质体的反演过程中出现了多解性的问题。于是,U向GCS提出请求,希望获取此次建模所需要的数据并对多解问题寻求符合实际情况的定解。具体过程如图2所示。以解决图2中问题1为例,该流程的具体解释如下:(1)前提。在处理P地区三维建模问题时,L,已经加入GCS组织。同时在GCS当中还有相关111图2GCS解决方案流程的地学组织0。,02,…,Q…,这些组织通过Inter— net互联,且对P有不同方面的研究。(2)服务请求。通过GCS用户客户端,选择相应的服务,并提交请求。比如,对于数据不足的问题,可以选择“数据共享”模块,并完成相关资料的填写,如P地的地理位置、需要共享的数据类型等。GCS创建该作业的表单,此表单中应包括u提出作业的所有信息。(3)服务处理。GCS接收到U的作业请求之后依次进行下述操作:①用户身份验证。确定用户U的操作权限,保证数据安全性。②数据需求检测。确定U提出的数据服务请求属于GCS能够处理的作业。③作业优先级设置。根据GCS规定的作业优先级规则,赋予该作业的优先级。④程序加载与服务配置。GCS根据该作业的需求完成服务的准备工作。⑤发送数据指令。GCS向资源存储/应用层发送数据指令,该指令是包括能够反映U作业表单中的所有信息和完成所有任务的指令,如P地区地理位置数据集、P地区重力异常数据集、数据处理方法、分布式计算指令等。(4)返回结果。处于资源存储/应用层的数据节点根据数据指令一次进行数据的查找、筛选、数据处理,并将结果返回给服务代理层。服务代理层根据该结果向用户u返回此次云计算结果(5)数据处理。U接收到此次服务请求的结果之后,可能获取的结果不能完全满足需求,U需要根据实际情况对数据进行处理,完成P地区三维建模问题。(6)GCS扩展。在实际工作当中,u对通获取的部分数据有了新的理解,对数据处理过程与方法有新的思路,可以通过扩展接口向GCS发出请求,GCS通过与上述类似的服务处理过程向U提供算法的更新、编译、调试、说明等服务。112对于多解性问题的解决也采用类似的流程。由于在GCS的服务处理过程中,用户可以选择多种算法如模拟退火算法、神经网络算法进行地球物理反演,并将不同算法的结果进行比对,可以有效解决反演的多解问题。在这个过程中,由于数据计算是在“云层”中进行的,因此可以保证运算效率。通过上述过程,U获取了关于研究区P更为详实的资料,通过多种算法参与计算,解决了反演的多解问题。借助这些资料,在对研究区P的三维建模过程中,不仅可以对其分界、剖面等进行渲染,对其内部也可能有更为详尽的描述,对地学相关研究是有意义的。4结束语云计算在工业界与学术界都受到了广泛关注,对云计算的投资和研究也在逐年增加。在地学研究过程中,尤其是三维可视化表达方面,大多停留在“假三维”层面,这对于地学研究往往意义不大。在工业界与学术界已有很多云系统的实例,但是尚没有基于云计算解决地学问题的具体方案。本文结合云计算的特点和技术,设计了一套地学云系统(GCS),以期在今后的研究中,能够将该设计付诸实际地学问题解决当中。参考文献:[1]SimsK.IBMIntroducesReady—tO—UseCloudComputingCollaborationServicesGetClientsStarted withCloudCom— puting[EB/OI。].E20lo-06—13].http://www一03.ibm.com/ press/us/en/pressrelease/.WSS.[2]Amazon.AmazonElasticComputeCloud(AmazonEC2)[EB/OL].[20lo~07一02].http://aws.amazon.com/ec2.[3]ZhangY x,ZhouYZ.TransparentComputing:ANewPar— adigm forPervasiveComputing[c]∥PrecQf the3rdInt’IConf onUbiquitousIntelligence andComputing,2006.[4 jLeavittN.IsCloudComputingReallyReady forPrimeTime?口].Computer,2009,42(1):15-20.Is]史佩昌,王怀民.蒋杰,等.面向云计算的网络化平台研究与实现[J].计算机工程与科学,2009,31(z1):249—252.[6]刘鹏.云计算[M].北京:电子工业出版社,2010.[7]Above theClouds:ABerkeleyView ofCloudComputing[EB/OI.].[20lo一07一02].http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009/28.html.[8]BuyyaR,CheeSY,VenugopalS.MarketOrientedCloudComputing:Vision,Hype andReality forDeliveringITServices asComputingUtilities[C],≠Proe of the10thIEEEInt’lConf onHighPerformanceComputing andCommuni cations,2008:5—13.

上一篇:异地学子淘宝开卖“生活费”
下一篇:没有了

Top