开篇:润墨网以专业的文秘视角,为您筛选了八篇云计算与分布式技术范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
【关键词】云计算 数据挖掘 系统设计
随着网络大数据信息处理技术的发展,对数据处理的规模不断增大,对数据信息处理的精度要求不断提升,采用云计算进行数据分布式网格计算,能提高数据的并行处理和调度性能,根本上提高数据的计算速度,因此,云计算成为未来大数据信息处理的主要趋势。在云计算环境下进行数据挖掘,是进行大数据信息特征提取和数据开采的基本技术,相关的算法研究受到人们的重视。
文献采用云计算环境下分布式数据模糊C均值聚类的挖掘算法,在受到较强的毗连特征干扰时,数据挖掘的精度不高。针对上述问题,本文提出一种基于分布式自适应特征调度和高阶累积量后置聚焦的数据挖掘算法,并进行了仿真实验性能分析,得出了较好的数据挖掘效果的结论。
1 基于云计算的分布式数据挖掘算法设计
为了实现对基于云计算的分布式数据挖掘系统设计,其中,数据挖掘算法设计是关键,本文提出一种基于分布式自适应特征调度和高阶累积量后置聚焦的数据挖掘算法,假设数据信息流为,数据信息流通过噪声滤波,得到数据流聚类相似性函数表示为,其是一组准平稳随机的时间序列,对数据库中的存储信息流进行能量谱密度特征提取,得到输出数据x(t)的第n个宽频带分量,分布式自适应特征调度模型表示为:
2 嵌入式Linux的内核下数据挖掘系统设计描述
在上述进行了算法设计的基础上,进行数据挖掘系统的软件开发设计,基于云计算的分布式数据挖掘系统总体模型中,采用ST 超低功耗 ARM CortexTM-M0 微控制器,系统建立在嵌入式Linux的内核平台上,系统包括程序加载模块、数据存储模块、数据缓存调度模块和数据通信传输模块等,通过配置CAN_IMASK寄存器,采用LabWindows/CVI进行数据远程控制和信息通信,基于云计算的分布式数据挖掘系统给用户提供一个简单、统一的系统调用接口,系统可配置4路组联合Cache,基于云计算的分布式数据挖掘系统的寄存器系统时钟120 MHz。嵌入式Linux的内核下数据挖掘系统通过VISA软件接口发送Flash设备上的文件系统内核到HP E1562D/E SCSI数据硬盘进行数据存储,调用s3c2440_adc_read()函数,进行程序加载和基于云计算的分布式数据挖掘系统的嵌入式控制,使用Qt/Embedded作为GUI,利用开源Linux操作系统的丰富网络资源,实现数据挖掘系统的远程通信信息传输和控制。
3 仿真实验
为了测试本文设计的基于云计算的分布式数据挖掘系统在实现数据挖掘中的优越性能,进行仿真实验,分布式数据信息采样的时宽为10 ms, 分布式数据的随机采样率为KHz,调控因子λ=0.25。根据上述仿真环境和参数设定,进行基于云计算的分布式数据挖掘系统的数据挖掘和处理性能分析,首先进行数据挖掘的输出时域波形采样,结果如图1所示。
从图可见,采用本文算法进行数据挖掘的准确度较高,为了对比性能,采用本文方法和传统方法,以数据挖掘的准确配准性为测试指标,得到对比结果如图2所示。
实验结果表明,采用该方法进行基于云计算的分布式数据挖掘,数据挖掘的准确配准性能较好,系统的可靠性较好。
4 结束语
本文提出一种基于分布式自适应特征调度和高阶累积量后置聚焦的数据挖掘算法,并进行了实验分析。结果表明,采用该方法进行数据挖掘,数据挖掘的准确配准性能较好,系统的可靠性较好,具有较好的应用价值。
参考文献
[1]陆兴华,谢辉迪,许剑锐.基于近场通讯和物联网的饭堂自动计价系统[J].智能计算机与应用,2015,5(06):18-21.
[2]童峥嵘,郭尊礼,曹晔,等.小波包变换对CO-OFDM系统高峰均比的抑制性能研究[J].光子学报,2015,44(12):1206001-1206001.
[3]谭营军,王俊平.基于MEACO的无线传感器网络路由光通信算法研究[J].激光杂志,2016,37(02):131-133.
作者简介
李颖(1977-),女,广东省韶关市人。硕士研究生学历。现为广东科学技术职业学院讲师。主要研究方向为虚拟化与云计算。
[关键词]虚拟化;分布式计算;云管理平台;key/value存储引擎
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
赵培,中兴通讯业务研究院总工程师,中兴通讯技术专家委员会专家;研发的zxj10程控交换机《单板大容量数字时分交换网络》系统获广东省火炬优秀项目奖、深圳市科技进步奖一等奖,拥有发明专利8项。
关键词:虚拟化;分布;云存储
中图分类号:TP393文献标识码:A文章编号:1009-3044(2012)11-2641-02
云存储是实现云计算服务能力的不可或缺的关键要素。从狭义上来说,云存储是指通过虚拟化、分布式技术、集群应用、网格技术、负载均衡等技术,将网络中大量的存储设备通过软件集合起来高效协同工作,共同对外提供低成本、高扩展性的数据存储服务。从广义上来讲,云存储可以理解为按需提供的虚拟存储资源,如同云计算的Paas、Iaas服务一样,可称为数据存储即服务(Data Storage As a Service,DaaS),即基于指定的服务水平请求,通过网络提供适当的虚拟存储和相关数据服务。
云存储技术的发展,是因为传统的盘阵存储由于高成本和系统的高负载性,已经难以适应云计算服务对存储的需求。传统盘阵虽然利用专有的、定制设计的硬件组件和互连接口设计集成在一起,保障了的存储的性能和可靠性,但是其单点扩展存在容量上限和接口带宽等限制,面对PB级的海量存储需求,无论是SAN或NAS在容量和性能的扩展上均无法满足应用的需要;且盘阵造价昂贵,标准化程度较低,组件的更换常常导致系统故障或者硬件的升级,从而导致存储成本居高不下。
由此,为实现存储的低成本、高可扩展与资源池化,云存储技术应运而生,这其中最关键的是存储虚拟化技术与分布式存储技术的应用[1]。从短期来看,存储化技术可以充分提升现有存储资源的应用水平,实现资源池化,提升设备使用率,降低管理成本。从长远发展来看,分布式存储技术则是未来云存储的发展趋势,分布式存储底层可构建在标准X86服务器集群之上,通过分布式文件系统对外提供弹性存储资源,可选择SATA作为存储实现方式,根据应用需要提供丰富的服务接口,从而大大降低了存储成本。同时基于X86的分布式存储的集群架构也实现了较强的Scale-out扩展能力。
该文的第二章对现有的三种类型的存储虚拟化技术原理及应用进行了详细分析,第三章对分布式云存储的技术发展和应用进行了分析和研究,第四章给出了研究结论。
1存储虚拟化
存储虚拟化技术主要指通过在物理存储系统和服务器之间增加一个虚拟层,使服务器的存储空间可以跨越多个异构的磁盘阵列,实现从物理存储到逻辑存储的转变。从而能够把不同品牌、架构甚至不在统一物理居址的存储设备统一到一个(若干个)虚拟的存储资源池,实现存储资源的统一调度、管理和使用。存储虚拟化技术是传统存储向云存储过渡的重要中间技术,在实现存储资源管理统一、高效的同时,使得存储资源的调度、增减对用户完全透明,使存储资源具备了支撑云计算服务的能力。
1.1主要存储虚拟化技术
存储虚拟化技术虽然不同设备与厂商之间略有区别,但从总体来说,可概括为基于主机虚拟化、基于存储设备虚拟化和基于存储网络虚拟化三种技术[2]。
1)基于主机的虚拟化存储的实现,其核心技术是通过增加一个运行在操作系统下的逻辑卷管理软件将磁盘上的物理块号映射成逻辑卷号,并以此实现把多个物理磁盘阵列映射成一个统一的虚拟的逻辑存储空间(逻辑块)实现存储虚拟化的控制和管理。从技术实施层面看,基于主机的虚拟化存储不需要额外的硬件支持,便于部署,只通过软件即可实现对不同存储资源的存储管理。但是,虚拟化控制软件也导致了此项技术的主要缺点:首先,软件的部署和应用影响了主机性能;其次,各种与存储相关的应用通过同一个主机,存在越权访问的数据安全隐患;最后,通过软件控制不同厂家的存储设备存在额外的资源开销,进而降低系统的可操作性与灵活性。
2)存储设备虚拟化技术依赖于提供相关功能的存储设备的阵列控制器模块,常见于高端存储设备,其主要应用针对异构的SAN存储构架。此类技术的主要优点是不占主机资源,技术成熟度高,容易实施;缺点是核心存储设备必须具有此类功能,且消耗存储控制器的资源,同时由于异构厂家磁盘阵列设备的控制功能被主控设备的存储控制器接管导致其高级存储功能将不能使用。
3)基于存储网络虚拟化的技术的核心是在存储区域网中增加虚拟化引擎实现存储资源的集中管理,其具体实施一般是通过具有虚拟化支持能力的路由器或交换机实现。在此基础上,存储网络虚拟化又可以分为带内虚拟化与带外虚拟化两类,二者主要的区别在于:带内虚拟化使用同一数据通道传送存储数据和控制信号,而带外虚拟化使用不同的通道传送数据和命令信息。基于存储网络的存储虚拟化技术架构合理,不占用主机和设备资源;但是其存储阵列中设备的兼容性需要严格验证,与基于设备的虚拟化技术一样,由于网络中存储设备的控制功能被虚拟化引擎所接管,导致存储设备自带的高级存储功能将不能使用。
1.2存储虚拟化技术对比
被节用表格的方式对三种存储虚拟化技术的技术优点与缺点、适应场景等进行了分析对比,结果见表1。
表1存储虚拟化技术对比
2分布式存储
分布式存储相比传统的集中阵列存储设备,其技术和解决方案,还处于发展初期,总体来看只具备部分场景下的存储需求实现能力。但是从发展趋势来看,通过一个可扩展的网络进行连接各离散的处理单元的分布式存储系统,其高可扩展性、低成本、无接入限制等优点是现有存储系统所无法比拟的。该文的分析研究将以目前发展的分布式块存储、分布式文件系统存储、分布式对象存储和分布式表存储这四种分布式存储技术为对象进行。
1)分布式块存储:块存储就是服务器直接通过读写存储空间中的一个或一段地址来存取数据。由于采用直接读写磁盘空间来访问数据,相对于其他数据读取方式,块存储的读取效率最高,一些大型数据库应用只能运行在块存储设备上。分布式块存储系统目前以标准的Intel/Linux硬件组件作为基本存储单元,组件之间通过千兆以太网采用任意点对点拓扑技术相互连接,共同工作,构成大型网格存储,网格内采用分布式算法管理存储资源。此类技术比较典型的代表是IBM XIV存储系统,其核心数据组件为基于Intel内核的磁盘系统,卷数据分布到所有磁盘上,从而具有良好的并行处理能力;放弃RAID技术,采用冗余数据块方式进行数据保护,统一采用SATA盘,从而降低了存储成本。
2)分布式文件系统存储:文件存储系统可提供通用的文件访问接口,如POSIX、NFS、CIFS、FTP等,实现文件与目录操作、文件访问、文件访问控制等功能。目前的分布式文件系统存储的实现有软硬件一体和软硬件分离两种方式。主要通过NAS虚拟化,或者基于X86硬件集群和分布式文件系统集成在一起,以实现海量非结构化数据处理能力。
软硬件一体方式的实现基于X86硬件,利用专有的、定制设计的硬件组件,与分布式文件系统集成在一起,以实现目标设计的性能和可靠性目标;产品代表Isilon,IBM SONAS GPFS。软硬件分离方式的实现基于开源分布式文件系统对外提供弹性存储资源,软硬件分离方式,可采用标准PC服务器硬件;典型开源分布式文件系统有GFS[3]、HDFS。
3)分布式对象存储:对象存储是为海量数据提供Key-Value这种通过键值查找数据文件的存储模式;对象存储引入对象元数据来描述对象特征,对象元数据具有丰富的语义;引入容器概念作为存储对象的集合。对象存储系统底层基于分布式存储系统来实现数据的存取,其存储方式对外部应用透明。这样的存储系统架构具有高可扩展性,支持数据的并发读写,一般不支持数据的随机写操作。最典型的应用实例就是亚马逊的S3(Amazon Simple Storage Service)。对象存储技术相对成熟,对底层硬件要求不高,存储系统可靠性和容错通过软件实现,同时其访问接口简单,适合处理海量、小数据的非结构化数据,如:邮箱、网盘、相册、音频视频存储等。
4)分布式表存储:表结构存储是一种结构化数据存储,与传统数据库相比,它提供的表空间访问功能受限,但更强调系统的可扩展性。大多数表存储的数据可靠性依赖于表存储底层采用的文件存储,对底层硬件要求不高,一般常采用开源软件和通用PC,具有低成本的特性。提供分布式表存储的云存储系统的特征就是同时提供高并发的数据访问性能和可伸缩的存储、计算架构,适合存储海量结构化或半结构化数据。其典型产品代表有Greenplum和谷歌的Bigtable[4]。以Greenplum为例,一般采用MPP(Massive Parallel Processing)架构实现海量数据存储和处理、以及高并发数据读写能力,它实现了SQL到MapReduce的翻译、优化、执行和结果收集,具有良好的扩展能力。
3结论
综上所述,从目前云存储主要技术和解决方案的发展来看,已经具备从传统存储架构向云存储架构演进的条件。具体到技术选择和方案实施层面,首先需要关注存储系统的应用需求,特别是其数据需求量与数据结构特点,从而确定选择的存储技术与方案类型;其次需要考虑是否需要利用现有存储设备,分布式存储技术多数应用了全新的存储架构,一般无法和现有存储设备整合;最后需要从性能实现和存储成本等方面对技术方案进行比较。
参考文献:
[1]李煜民,章才能,谢杰.云计算环境下的数据存储[J].电脑知识与技术,2010,6(5):1032-1034.
[2]白翠琴;王建;李旭伟.存储虚拟化技术的研究与比较[J].计算机与信息技术,2008(7).
本期记者走访的是北京友友天宇系统技术有限公司,作为国内企业中为数不多的掌握了云计算平台核心技术的初创公司,友友系统正在产业链中定位自己的方向。
云计算是IT产业的一次大潮。在潮起潮落中,现有的IT厂商都会面临新的洗礼——淘汰者被大潮冲走,一批新的创业者也会涌现。位于北京云基地的北京友友天宇系统技术有限公司(以下简称“友友系统”),就是在云计算大潮下出现的一个新面孔,它随着云计算大潮而生,正经受着云计算市场的严峻考验。
作为云计算产业链条中的一环,特别是位于云计算软件中的最底层——云计算平台,友友系统的产品显得过于专业,也不为人所熟知,但其产品却是构建云计算平台的核心,用友友系统员工自己的话说,就是通往云计算世界的一部梯子。作为国内为数不多的掌握云计算平台核心技术的国产厂商,友友系统周围强手环伺。友友系统如何定位自己在云计算世界中的角色,其产品又怎样应对市场需求?日前,本报记者就相关问题独家专访了友友系统的创始人之一、友友系统CEO姚宏宇博士。
发现云计算技术本质
关于云计算的定义几乎每个人都有自己的理解。姚宏宇认为这并不奇怪,因为新的技术变革必需经历这一过程,就像之前的分布式计算、网格计算甚至互联网一样,假以时日,人们的意见必然会趋同。
“云计算是一种商业模式,也是一种技术进步。”他说,对云计算的理解可以分为两个层面:从商业模式的角度看,云计算是互联网模式的延伸和发展,它把互联网的服务从原来的信息服务延伸到硬件资源、软件资源以及所有跟IT相关的东西。“我把云计算叫做Internet 2.0。从服务模式来讲,云计算与互联网的本质一样,都是通过互联网交付服务,只是云计算把这个范围扩展得更大。而从技术角度来看,云计算无非是把很多不同种类的、分布在各地通过网络联接起来的资源结合起来,这个结合体叫做‘云’。”
集群计算、分布式计算、并行计算、网格计算是一些技术人员谈到云计算时总会提到的概念。姚宏宇认为,这些概念相互之间存在着密切关系,并行计算和分布式计算等很多概念都是从最早的集群技术演化而来的。
在计算机科学的发展过程中,大规模计算有两种不同的发展理念,一个叫“Share everything(一切皆共享)”,一个叫“Share nothing(一切皆独享)”。第一个理念的代表是并行计算,其具体实现就是超级计算机,超级计算机的存储、内存和CPU都是共享的,比如CPU可能有几千个,但从操作系统层面看就是一个CPU。这一技术路线下的产品商业应用范围较窄,主要应用在特定领域,对社会和商业影响较小;第二个理念的代表是分布式计算,这种系统中每个节点都是一个独立单位,每一个小单元完全可以自己做计算,能完成所有计算机该做的操作,目前的计算机应用系统基本都是这一体系下的产物。
不过,上述这些理念和发展方向最终都能通向云计算。云计算的本质就是能够通过分布式计算、集群计算、网格计算等技术把各种资源有机地结合起来,让外面看到“云”,而不是看到很多小的计算机节点。同时,无论“云”里发生什么事情,上面的业务系统都不会受到影响。这就意味着这个云要足够大、足够有弹性。“而友友系统的核心技术就是实现资源整合,特别是数据资源的整合,并且屏蔽掉过程中的技术复杂性。”姚宏宇说。
打造云计算操作系统
创立之初,友友系统给自己的定位是基础软件的技术提供商,后来又进一步明确为云计算平台技术供应商。“尽管不敢说是IBM和Oracle的竞争对手,但是友友系统与它们的产品的确处于一个层面,而和国内绝大多数IT公司不一样。”姚宏宇坦言,由于技术的专业性,要想跟普通大众描述清楚他们是做什么的,并非易事。
姚宏宇把自己的产品归为云计算操作系统。他说,从传统的IT架构来说,友友系统的产品属于中间件,位于操作系统之上、应用系统之下,因此叫云计算中间件比较合适。但中间件这个名字对中国人而言含义并不明确,而命名为云计算操作系统是因为其产品之于云计算整体架构的确如同传统计算机系统中操作系统的作用一样。“当然,我们提出云计算操作系统概念不是从传统IT架构的角度出发,更多的是考虑到面向未来。”
姚宏宇解释说,一台计算机包括一个CPU、一个内存、一个磁盘外加一个外壳,这就是冯·诺依曼计算机的典型结构。如果设想这个计算单元分布在1万台机器的CPU上,是由几十个计算节点组成的一个整体,用各种友友系统的软件对这个“超级计算机(云)”进行管理,那么这个软件就是云计算操作系统。因为业务系统是架在友友系统的软件之上的,下面则面对单机的操作系统和硬件,对业务系统来说其下的整套东西就相当于一个虚拟的计算机。从这个角度说,友友系统的产品和普通计算机上的操作系统所做的工作是类似的。
不过,云计算操作系统毕竟不是我们常见的操作系统,而今称为云计算操作系统的也并不多,主流的包括VMware的vSphere和浪潮的云海OS等。那么,同为云计算操作系统的友友系统CloudWare到底有何不同?
在姚宏宇看来,大家的方向基本一致,但与VMware和浪潮的云计算操作系统侧重于虚拟化和对虚拟化环境的管理不同,友友系统的云计算操作系统更侧重于资源的集中和整合。“我觉得云计算最终目的是,前台无数端,后台一片云。”姚宏宇说,云计算操作系统的作用就是能够把这一片云管理起来,让端都认为后台真的是一片“云”,前台需要的东西后台通过统一标准的接口可以提供。从技术上说就是,这个云计算操作系统能为前台提供一套SDK或者API。它能够把后台所有的分布资源管理起来,让前端认为后面就是一台机器,这个管理体系就叫做云计算操作系统,虚拟机的管理只是其中的一部分。
研发五大核心产品
友友系统的云计算操作系统并不是一款单独的软件,而是由友友系统的一系列核心产品构成的。姚宏宇把这些产品分为两个层次:位于核心底层的Bitsflow、NetVM、DataCell;在其之上的平台产品智存、智维,它们都具有自主知识产权和核心技术。其中,Bitsflow主要负责大规模分布式系统之间的通信和协作,是一个高容错、高性能的数据交换和应用协作平台;DataCell是一个用于海量数据的分布式存储系统,也叫云存储;NetVM是一个分布式管理系统及分布式计算开发框架,相当于三个产品中的总调度。
“这三个产品相当于三个引擎,就如同Linux内核一样,用于支撑之上的两大平台级产品,分别是智存和智维。”姚宏宇介绍说,智存主要针对对象和文件存储,类似文件系统;智维用于进行大规模系统的运维和管控。”姚宏宇说。
值得一提的是,所有这些产品中负责网络通信的Bitsflow是基础,也是友友系统区别其他云计算公司最大的核心竞争力。姚宏宇把云计算的技术路线分为三类,一类是以存储为核心,以Google为代表;第二类是以虚拟化为核心,以VMware为代表;第三类是以亚马逊为代表的混合体。而友友系统选择的技术路线区别于以上三者,友友系统是以网络通信为核心,这也是姚宏宇看重Bitsflow的原因所在。
“以网络通信为核心,这是基于我们多年来一直专注大型分布式系统研究的结果。”姚宏宇解释说,“所谓分布式系统是基于网络有延迟这个前提的,如果网络无限快,它就不是分布式系统了,而是一台超级计算机了。我们的工作就是努力管理好网络层,这就相当于缩短了分布式系统中各个模块之间的距离,这是我们公司整个技术的理论基础。”姚宏宇说,正是由于选择了这样一种技术理念,才使友友系统解决了分布式系统的协同和数据交换问题,大大简化了其它后续产品研发上的技术挑战。
姚宏宇坦言,由于产品的专业性,特别是专注在云计算的底层,而且解决方法又有别于传统技术,使得他们的产品在推广上遇到的第一个难题就是如何向客户说清楚他们的技术究竟是什么。不过,他遇到的最大挑战还是市场不成熟。比如在解决海量数据的整合时,人们更倾向于传统的基于数据库的各种集成技术,而没有想到或者还不太认同友友系统提出的解决方案,尽管友友系统的方案实现成本更低、上线更快。
“好在技术和成本优势明显,口碑正在逐步建立,这几年项目也渐渐开展起来,尤其在金融、电信、电力、政府、互联网、教育等领域,我们每年的进步都非常明显。”姚宏宇表示,未来友友系统的重点是继续培育市场,同时完善自己的产品。他说最大的愿望是有朝一日用户能像认可关系型数据库一样认可友友系统的技术。
创业者档案
姚宏宇,1988年考入中国科技大学少年班,1993年赴美留学,先后获威斯康辛大学麦迪逊分校计算机和材料系的硕士及博士学位。自2000年起在硅谷从事大规模企业软件和互联网技术的研究、开发和管理工作。曾任美国雅虎研究院高级研究员、美国SideStep公司资深管理人员及架构师等。2007年在北京创立友友系统, 并担任公司总经理。
记者观察
自信源于对技术的准确把握
采访姚宏宇后,有几个印象深刻。第一是他的技术背景,第二是他对市场的把握,第三则是友友系统的商业模式。
外界一提起姚宏宇,往往要说他在科大少年班求学、美国攻读技术专业、随后在雅虎工作。涉及到姚宏宇技术背景的部分,往往语焉不详。姚宏宇说,正是由于在雅虎的一段经历,才让他真正了解到互联网的魅力和最新技术发展趋势。所以,在采访中,他一再把云计算和互联网相比较,坚信云计算是“IT行业真正的一次新技术变革,将产生无法想像的影响力”。他也坚信,“产品叫不叫云计算都无所谓,我们做的就是与大数据、大系统有关的事情,只不过现在赶上了云计算热潮。”
他的这种自信源于技术,而非概念炒作。
由于重视技术,友友系统成立几年后,一直在做研发,并没有将精力放在市场推广上。“现在大多数情况是用户提出需求后,其他公司做不了,才找到我们。”姚宏宇说,一是技术满足用户需求,二是大幅度节约用户投资,最多能为用户减少60%的投资。所以从供需关系看,潜在市场较大。但用户也有担心,因为技术太新,现有产品解决不了的情况下,只能抱着试一试的态度采纳友友系统的方案。这让姚宏宇不得不一次次给用户阐述技术。
摘要:随着云计算和大数据技术的发展,传统的单一存储介质的数据存储方式已经不能满足大数据处理的需求,在这样的背景下,分布
>> 分布式存储系统中一致性哈希算法的研究 基于有向通信拓扑的高阶分布式一致性算法 基于一致性的分布式粒子滤波算法 分布式业务流程实时一致性分析方法 分布式数据不一致性检测的实现与优化 一种基于影像块组织的遥感数据分布式存储方法 基于资源分类信息树的教育资源元数据分布式存储 云存储中基于PAXOS算法的数据一致性研究 一种基于信息分散算法的分布式数据存储方案 混合分布在非一致性水文频率分析中的应用 分布式环境中数据存储技术的研究 大数据分布式存储的冗余研究 一种协同工作环境中(分布式)的容错和安全数据存储方法 基于分布式的海量数据存储解决方案 运维系统告警数据的分布式存储方法 基于Ceph的企业分布式存储方案 一种基于vSAN的分布式存储系统构建和应用 基于云技术的分布式实时是数据库高性能数据存储检索机制探析 基于云技术的分布式实时数据库高性能数据存储检索机制探讨 基于一致性哈希算法的云存储服务器容错性研究 常见问题解答 当前所在位置:l】
[12]CHIANG M, ZHANG S, HANDE P. Distributed rate allocation for inelastic flows: Optimization frameworks, optimality conditions, and optimal algorithms [C]// INFOCOM 2005: Proceedings of the 24th Annual Joint Conference of the IEEE Computer and Communications Societies. Washington, DC: IEEE Computer and Communications Societies, 2005, 4: 2679-2690.
【关键词】云计算;服务中间件;动态管理平台
Abstract:In the grid system,there are usually a component is responsible for the resource management and task scheduling,which is responsible for scheduling resources to complete the tasks for the user submits and returns the result.In cloud computing systems,users according to the need to apply for the certain resources and deploy your application,not the entire user tasks submitted to the system.So,is usually provided by the cloud computing system resources,such as storage and computing power.With the rapid development of distributed applications,middleware technology and products of various kinds are springing up constantly.At the same time,due to the rapid progress of the middleware technology and products are,it is difficult to accurately complete classification of middleware is given.This article will focus on service middleware based on cloud computing dynamic management platform construction are studied.
Keywords:Cloud computing;Service middleware;Dynamic management platform
引言
随着计算机技术的发展,从硬件技术看,CPU速度越来越高,处理能力越来越强:从软件技术看,应用程序的规模不断扩大[1]:许多应用程序需要在网络环境的异构平台上运行,如PC、工作站、小型机等,在这些硬件平台上又存在各种各样的系统软件(如不同的操作系统、数据库、语言编译器等),以及多种风格各异的用户界面,这些硬件系统平台还可能采用不同的网络协议和网络体系结构连接。如何把这些系统集成起来并开发新的应用是一个非常现实而困难的问题:IT厂商出于商业和技术利益的考虑,各自产品之间形成了差异,技术在不断进步,但差异却并没有因此减少:计算机用户出于历史原因和降低风险的考虑,必然也无法避免多厂商产品并存的局面[2]。
1云计算概述
图1 与网格相关的组织机构
从定义来看,网格计算和云计算都把各种IT资源视为一个虚拟资源池,并对外提供服务。网格计算希望用户能够像使用水电那样方便地使用IT资源,而云计算支持用户透明地使用IT资源,二者都有公用计算的含义。网格计算和云计算使用不同的资源分配方式。此外,从使用模式看,通常采用“自底向上”的方式设计和构建网格系统:首先已经存在一些异构资源,网格把这些资源集成在一起形成虚拟组织并为用户提供各种高层服务。网格提供的性能极其丰富,与之相对应,网格的系统接口也比较复杂。大部分云计算系统的设计模式是“自顶向下”:针对特定目标的用户群和使用模式,云计算系统提供相应的功能,除此之外,别无其他。这意味着云计算系统提供的系统接口是比较简单的。在实际应用中,可在网格设施的基础上构建云计算系统,而云计算系统也可以成为网格系统中的资源节点[3]。
2云计算中间件的必要性和可行性
中间件(Middleware)是基础软件的一大类,属于可复用软件的范畴。顾名思义,中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用软件之下,作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件,是集成技术的关键和热点。中间件是为解决分布异构问题提出的概念,也是消除软件孤岛现象的突破口。人们在使用中间件时,往往是一组中间件集成在一起,构成一个平台(包括开发平台和运行平台)[4]。
中间件是一类连接软件组件和应用的计算机软件,它主要提供便于运行在一台或多台机器上的多个软件通过网络进行交互的服务。中间件所提供的互操作性推动了分布式体系架构的演进。这种架构有利于支持分布式应用程序(Web服务器、事务监控器和消息队列软件)并简化其复杂度。关系数据库系统是用关系模型设计的数据库系统。关系数据库是最常用的数据库,特别适用于存储和处理商务数据。它们通常构造为数据表的形式,数据被分门别类地存放在一些结构化的数据表里。在一个分布式系统中,中间件通常提供以下两种不同类型的支持。(1)交互支持。中间件协调系统中不同组件之间的交互。中间件提供位置透明性,因为组间不需要知道其他组件的物理位置。如果使用不同的程序语言实现组件、事件检测和通信时,中间件还可能支持参数转换。可以使用中间件来支持远程过程、远程方法调用和消息交换等。(2)提供公共服务。是指被不同组件需求的服务,不管这些组件的功能是什么。即中间件提供对服务可复用的实现,这些服务可能会被分布式系统中的很多组件需要。通过使用公共服务,组件可以很容易地相互协作,并且可以持续地向用户提供服务。公共服务可能包括安全服务(身份认证和权限认证)、通知和命名服务以及事务管理服务等。可以把这些服务看作是中间件容器提供的,可以在这个容器中部署组件,并且这些组件可以访问和使用这些公共服务。
3基于云计算的服务中间件动态管理框架
3.1 服务软件设备
主动数据库是指当某些事件发生或者满足一定条件时,能够主动地完成相应处理的数据库系统。为达到此目的,许多DBMS均实现了触发器机制,来部分地实现主动数据库的功能。触发器在执行对数据的操作(包括INSERT、UPDATE、DELETE)时,能够自动执行。另外,触发器在保证数据的完整性和一致性方面,具有特别重要的意义。因为数据库中其他的技术手段,如约束、规则、默认值以及序号值,对于实现跨数据表的各字段之间的静态或动态约束关系,均无能为力。因此,要实现复杂的商业逻辑(业务规则),就必须利用触发器[5]。
3.2 服务软件设备层次化管理模型
云计算系统由大量服务器组成,同时为大量用户服务,因此云计算系统采用分布式存储的方式存储数据,用冗余存储的方式保证数据的可靠性。云计算系统中广泛使用的数据存储系统是Google的GFS和Hadoop团队开发的GFS的开源实现HDFS。GFS即Google文件系统(Google File System),是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用[6]。GFS的设计思想不同于传统的文件系统,是针对大规模数据处理和Google应用特性而设计的。它运行于廉价的普通硬件上,但可以提供容错功能。它可以给大量的用户提供总体性能较高的服务[7]。云计算的数据存储技术未来的发展将集中在超大规模的数据存储、数据加密和安全性保证以及继续提高I/O速率等方面。以GFS为例,GFS是一个管理大型分布式数据密集型计算的可扩展的分布式文件系统。它使用廉价的商用硬件搭建系统并向大量用户提供容错的高性能的服务[8]。
3.3 服务软件设备按需提供机制
中间件是指处于操作系统和应用程序之间的一层软件,作用是为处于自己上层的应用程序提供运行与开发的环境,并为用户提供了一种高层次的、独立于平台的编程模型,并隐藏了复杂的底层细节。在众多关于中间件的定义中,目前比较普遍被接受的是国际数据公司(International Data Corporation,IDC)所表述的,即中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/服务器的操作系统之上,管理计算资源和网络通信。
4基于云计算的服务中间件动态管理的功能与构建
大型数据库设计是一个十分复杂的工程,既包括硬件,也包括软件以及技术和管理等问题。此外,数据库是数据的集合,只是数据库应用系统的一部分,因此数据库设计必须与应用系统设计相结合,在整个设计过程中要把基于结构(数据)设计的数据驱动的设计方法和基于行为(处理)设计的功能驱动的设计方法密切结合起来。数据驱动设计方法主要致力于数据模型与建模方法的研究,着重结构特性的设计,其设计步骤一般分为数据需求分析、概念数据库设计、逻辑数据库设计、物理数据库设计、数据库实施以及数据库运行和维护六步。
4.1 虚拟计算资源的动态调度能力
在云计算平台中,数据如何放置是一个非常重要的问题。在实际使用时,需要将数据分配到多个节点的多个磁盘当中。当前有两种方式能够实现这一存储技术:一种是使用类似于Google File System的集群文件系统,另外一种是基于块设备的存储区域网络(SAN)系统。总体上来说,云计算的存储体系结构应该包含类似于Google File System的集群文件系统或者SAN。另外,开源代码Hadoop HDFS(Hadoop Distributed File System)也实现了类似Google File System的功能,这为想要做硬件甲台(或者IDC)的公司提供了解决方案。
4.2 对分布式存储的扩展支撑能力
载体通常是一个多媒体文件,可能是声音文件,也可能是图像文件。伪装夹带技术通常通过两种方法对数据进行保护:第一种是使数据不可见,隐藏它的所有痕迹;第二种是对数据进行加密,其过程不仅仅是对数据进行隐藏[6]。这样,如果隐藏的文件被发现,那仍需要对其进行解密才能使用。
伪装夹带技术会给取证调查带来很大的麻烦,但由于其使用受到时间因素的限制,因而没有得到广泛的使用。目前,如果想要“伪装夹带”一个文件,那一次只能对一个文件进行操作。许多事件中包含成百上千个文件,嫌疑人不可能有时间来找到那么多合适的载体并伪装夹带所有的文件。
4.3 关键技术及应用
为了使用户能更轻松地享受云计算带来的服务,让用户能利用编程模型编写简单的程序来实现特定的目的,云计算上的编程模型必须十分简单。必须保证后台复杂的并行执行和任务调度向用户和编程人员透明。MapReduce是Google开发的Java、Python、C++编程模型,它是一种简化的分布式编程模型和高效的任务调度模型,用于大规模数据集(大于1TB)的并行运算。严格的编程模型使云计算环境下的编程十分简单[8]。MapReduce模式的思想是将要执行的问题分解成Map(映射)和Reduce(化简)的方式,先通过Map程序将数据切割成不相关的区块,分配(调度)给大量计算机处理,达到分布式运算的效果,再通过Reduce程序将结果汇整输出。云计算大部分采用Map―Reduce的编程模式。现在大部分IT厂商提出的“云”计划中采用的编程模型,都是基于Map.Reduce的思想开发的编程工具[9]。
参考文献:
[1]钱志鹏,康东明,柏新才.面向云计算的数据中心网络结构研究[J].电气应用,2013,20:80-83.
[2]熊飞,杨洪,沈亮,等.云终端系统在电网一体化平台中的经济效益分析[J].电气应用,2013,S1:288-293.
[3]周源,冯文龙,黄梦醒.云计算环境下中间件的负载均衡机制研究[J].计算机工程与设计,2014,04:1188-1192.
[4]王娟,姚卫华,石玉江,等.基于云架构的油气藏数据智能管理技术[J].天然气工业,2014,03:137-141.
[5]汤璇,王留召,钟良.利用云计算进行LiDAR数据产品虚拟化处理[J].测绘通报,2014,05:76-79.
[6]杨海平,刘健.数字图书馆平台技术研究综述[J].图书馆理论与实践,2014,05:33-35.
关键词:云计算:资源管理;资源优化配置
1 云计算定义
云计算是一种商业计算模型,它将计算任务分布到由大量服务器构成的资源池上,从而使用户能够根 据需要获取计算能力、存储空间和信息服务,这种资源池称为“云”。“云”是一些可以自我维护和管理的 虚拟计算资源,通常是一些大型服务器集群,包括计算服务器、存储服务器和宽带资源等等。它是并行计算(Parallel Computing)、分布式计算(Distributed Computing)和网格计算(Grid Computing)的延续, 或者说是这些计算科学概念的商业实现。云计算是虚拟化(Virtualization)、效用计算(Utility Computing)、 laaS(Infrastructure as a Service,基础设施即服务)、PaaS(Platform as a Service,平台即服务)、SaaS(Software as a Service,软件即服务)等概念混合演进并跃升的结果。在云计算的定义上,许多学者与机构各执一词,下文列举了几个具有代表性的云计算定义方式:
Ian Foster等人[1]认为云计算是一个由经济因素驱动的大规模分布式计算范式,在云计算之中有一个抽 象的、虚拟化的、动态伸缩的、计算能力得到管理的,且存储、平台和服务通过互联网被按需提供给外部 用户的资源池。
IBM在其技术白皮书[2]中指出:云计算一词描述了一个系统平台或一类应用程序;该平台可以根据用 户的需求动态部署、配置等;云计算是一种可以通过互联网进行访问的可以扩展的应用程序。
Michael Armbrust[3]等人认为云计算既是指通过Intemet作为服务的应用程序,也指提供这些服务 的数据中心中的软硬件资源,这些服务通常被称为SaaS。数据中心的硬件和软件合在一起便是我们所称的 “云”。当这些软硬件资源以即用即付(pay as you go)方式提供给公众时,称其为公有云(public cloud),其所提供的服务就是效用计算(utility computing);与之相对的是私有云(private cloud),其描述的是一个商业或其他机构对外不可用的内部数据中心,因此云计算即为SaaS和效用计算的融合。美国国家标准技术研究院给出的云计算定义为:云计算是一种普适的、便捷的、通过网络按需介入到一组配置好的计算资源池(如网络、服务器、存储、 应用程序以及服务等)的模型,该模型能够以最小的管理代价或与服务提供商的交互快速地准备及。
中国云计算网将云计算定义为[4]:云计算是分布式计算、并行计算和网格计算的发展,或者说是这些科学概念的商业实现。 根据部署模式的不同,云计算的类型又可以分为公用云、私有云和混合云。
资源管理是云计算的核心问题之一,它主要包括资源的描述、动态组织、发现匹配、优化配置和即时监控等活动。与传统的分布式环境和网格环境下的资源管理所不同的是,云计算环境下资源管理是通过虚拟化技术的运用来屏蔽底层资源的异构性和复杂性,把分散的各种资源管理起来,使得分布式资源能够被当作单一资源处理,形成一个统一的巨型资源池而不是分散的资源库,以此确保资源的合理、高效的分配和使用,并且云计算环境下资源管理的各个组成部分之间并不是孤立的,资源的描述、组织、发现与匹配、
配置和监控是彼此之间存在紧密联系的系统要素,它们之间的共同作用构成了一个整体。资源的描述和表示形式将影响到它的动态组织方式,而资源的发现与匹配机制又会因上述两者的变化而做出相应的调整, 以实现高效资源提取;同样的,在制定资源调度策略时,也会考虑底层资源的组织形式、发现与匹配机制;最后,资源动态监控将对系统中的各个要素进行检测和控制,保证系统的安全、稳定和高效运行。
2 云计算资源管理框架构建
1.资源信息的表示和描述针对云环境下资源信息的表示和描述方法具有服务化、语义化和用户化等特点,该方向主要有以下几点问题:
①由于目前分布式计算及网格计算环境中资源信息的表现形式各异,描述语言多样且杂乱,会使得在 此环境下的资源难以得到有效管理,因此云计算环境下资源信息描述方法应在现有的资源信息表示格式、方法及框架基础之上进行相应的描述转换问题,从而实现资源的统一描述,克服资源描述方式的多样性, 资源的异构性和分布性等障碍,以此来支持云计算服务系统的开放性,降低系统构造复杂度,也为云资源发现与匹配提供良好的环境和基础。
②在对云计算资源进行统一描述过程中,充分考虑资源的语义化描述问题,使其更贴近用户的自然理解,更加准确反映资源的实际内容,从而达到高效的资源发现和匹配及支持面向用户的智能化资源管理的目的。
③在对资源进行统一描述过程中,充分考虑用户的个性化需求问题,以期进一步增强表述用户信息的能力,加入如满足SLA、QoS等需求的用户个性化偏好信息,为用户提供满意的信息资源。因而,在云环境下信息资源管理研究中,应将重点放在研究适用于云计算环境的、面向资源管理的服务语义描述框架,进而研究基于用户兴趣的个性化资源定制需求的扩展服务语义描述框架。
2.资源的发现与匹配机制针对云计算资源的分布性和异构性特点,以及从资源发现过程中充分考虑用户需求的角度出发,云环境下资源发现与匹配机制所面临的关键问题主要在以下几方面:
①基于分布式环境下的资源发现机制。云环境作为一种广域的大规模分布式环境,资源存储在异构平台上,并且由不同的管理策略控制,研究不依赖集中控制的、迅速的、分布式、可扩展、能适应资源动态变化,并且定位性能好的资源发现机制是个亟待解决的问题。
②基于语义匹配的资源发现方法与技术。由于语义化资源描述可以使机器精确地理解、采集和组合信息,并且基于语义的信息很容易加入如SLA,QoS等个性化需求,从而研究云环境下基于语义匹配的资源发现方法也就成为一种必然。针对云计算环境中的海量资源,该领域应主要研究具有自适应特征的资源发现机制,建立基于服务语义描述和迭代反馈调整机制的资源匹配模型,并提出相应的求解方法。
3.资源的动态管理云计算资源的动态管理是个复杂的问题。在云环境中,资源的地理分布极广,类型丰富和数量巨大,而且要求一定程度的协同工作:资源是动态变化的,包括资源属性的变化,以及在云环境中的复制和迁移等;资源工作在异构平台上,并且由不同的管理策略控制;在跨云计算平台的资源需求协调过程中,资源为不同的组织拥有,这些组织具有不同的使用规则、计费模型、负荷能力和使用模型。
在这样的环境中,就需要研究一种实时性强、扩展性能优异且适应资源动态变化的资源动态管理机制, 从而该领域未来的研究方法向应致力于协调用户与资源提供者之间的关系,对资源进行有效组织、分配,研究云计算环境下基于用户需求和用户行为的资源推荐模型及算法,研究获取跨组织、跨管理域的资源服 务协议,建立资源的动态优化分配机制,最终为云用户提供优质的资源服务。
3 小结
在动态的云计算环境下对资源实现有效的管理是保证云计算系统高效运行、资源优化配置和服务即时提供的保障。本文在总结云计算资源的基础上,提出了该领域所面临的关键问题和挑战。并构建了云计算环境下资源管理框架。
参考文献
[1]Foster I,et a1.Cloud computing and grid computing 360-degree compared[C].Grid Computing Environments Workshop,IEEE,2008:1-10.
[2]智慧的地球一IBM动态基础架构白皮书.http///cn/express/migratetoibm/dynamicinfrastructure/download/dy7namicinfrastructure_whitepaper0903.pdf.
1、大数据通俗的解释就是海量的数据,顾名思义,大就是多、广的意思,而数据就是信息、技术以及数据资料,合起来就是多而广的信息、技术、以及数据资料。
2、大数据是一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。
3、从技术上看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分。大数据必然无法用单台的计算机进行处理,必须采用分布式架构。它的特色在于对海量数据进行分布式数据挖掘。但它必须依托云计算的分布式处理、分布式数据库和云存储、虚拟化技术。
(来源:文章屋网 )