摘要:云计算技术的兴起和发展,正逐渐改变人们使用服务和资源的方式,同时也成为计算机应用领域的研究热点。云存储可实现云端海量数据的高效存储,是云计算的重要基础云存储可实现云端海量数据的高效存储,是云计算的重要基础。对如何保证云存储系统的服务质量及可靠性,对于保证海量用户的访问效率,维护海量数据存储的可用性及用户技术服务平台的开发有着重大意义。关键词:云计算;海量数据;服务质量;服务平台基于微软云计算技术服务平台(Windows Azure ServicesPlatform)进行二次开发,对非云端程序与云端程序连接技术进行研究,根据用户需求在云计算平台上开发、部署集群、设计一个通用的多样化的软件系统平台。技术的不断进步必将推动存储向更高容量发展,而重复数据删除、压缩等技术的引入,可以进一步提升存储空间的利用率。面对PB级的海量存储需求。传统的SAN或NAS在容量和性能的扩展上会存在瓶颈,云计算这种新型的服务模式必然要求存储架构保持极低的成本。而现有的一些高端存储设备显然还不能满足这种需求。1 云存储概述1.1 云存储的概念它是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。严格来讲,云存储不是存储,而是一种服务。云存储的核心是应用软件与存储设备相结合,通过应用软件来实现存储设备向存储服务的转变。1.2 云计算和云存储的关系云计算是分布式处理(Distributed Computing)、并行处理(Parallel Computing)和网格计算(Grid Computing)的发展,是透过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多台服务器所组成的庞大系统经计算分析之后将处理结果回传给用户。2 云存储系统分析与传统的存储设备相比,云存储不仅仅是一个硬件,而是一个网络设备、存储设备、服务器、应用软件、公用访问接口、接入网、和客户端程序等多个部分组成的复杂系统。各部分以存储设备为核心,通过应用软件来对外提供数据存储和业务访问服务。云存储系统的结构模型由4层组成。2.1 存储层存储层是云存储最基础的部分。存储设备可以是光纤通道存储设备,也可以是其他的存储设备。云存储中的存储设备往往数量庞大且分布多不同地域。彼此之间通过广域网、互联网或者光纤通道网络连接在一起。存储设备之上是一个统一存储设备管理系统,可以实现存储设备的逻辑虚拟化管理、多链路冗余管理,以及硬件设备的状态监控和故障维护。2.2 基础管理层基础管理层是云存储最核心的部分,也是云存储中最难以实现的部分基础管理层通过集群、分布式文件系统和网格计算等技术,实现云存储中多个存储设备之间的协同工作,使多个的存储设备可以对外提供同一种服务,并提供更大更强更好的数据访问性能。CDN内容分发系统、数据加密技术保证云存储中的数据不会被未授权的用户所访问,同时,通过各种数据备份和容灾技术和措施可以保证云存储中的数据不会丢失,保证云存储自身的安全和稳定。2.3 应用接口层应用接口层是云存储最灵活多变的部分。不同的云存储运营单位可以根据实际业务类型,开发不同的应用服务接口,提供不同的应用服务。比如视频监控应用平台、网络硬盘引用平台,远程数据备份应用平台等。2.4 访问层任何一个授权用户都可以通过标准的公用应用接口来登录云存储系统,享受云存储服务。云存储运营单位不同,云存储提供的访问类型和访问手段也不同。3 云存储应用云存储从结构模型可以看出,云存储能提供什么样的服务取决于云存储架构的应用接口层中内嵌了什么类型的应用软件和服务。不同类型的云存储运营商对外提供的服务也不同。根据服务类型和面向的用户不同,云存储服务可以分为个人级应用和企业级应用。3.1 个人级云存储应用3.1.1 网络磁盘网络磁盘是一种在线存储服务,使用者可通过web访问方式来上传和下载文件,实现个人重要数据的网络化存储和备份。高级的网络磁盘可以提供web页面和客户端软件等两种访问方式。网络磁盘的容量空间一般取决于服务商的服务策略,或取决于使用者向服务商支付的费用多少。3.1.2 在线文档编辑在线文档编辑将使我们不再需要在个人PC上安装office等软件,只需要打开Coogle does网页,通过Google does就可以进行文档编辑和修改(使用云计算系统),并将编辑完成的文档保存在Coogle does服务所提供的个人存储空间中(使用云存储系统)。无论我们走到哪儿,都可以再次登录Coogle does,打开保存在云存储系统中的文档。通过云存储系统的权限管理功能,还能轻松实现文档的共享、传送以及版权管理。3.1.3 在线的网络游戏我们可以通过云计算和云存储系统来构建一个庞大的、超能的游戏服务器群,这个服务器群系统对于游戏玩家来讲,就如同是一台服务器,所有玩家在一起进行竞争。云计算和云存储的应用,可以代替现有的多服务器架构,使所有玩家都能集中在一个游戏服务器组的管理之下。同时,云计算和云存储系统的使用可在最大限度上提升游戏服务器的性能,实现更多的功能。3.2 企业级云存储应用从目前不同行业的存储应用现状来看,以下几类系统将有可能很快进入云存储时代。3.2.1 企业空间租赁服务信息化的不断发展使得企业的信息数据量呈几何级数增长。通过高性能、大容量云存储系统。数据业务运营商和idc数据中心可以为无法单独购买大容量存储设备的企事业单位提供方便快捷的空间租赁服务,满足企事业单位不断增加的业务数据存储需求。3.2.2 企业级远程数据备份和容灾通过高性能、大容量云存储系统和远程数据备份软件,数据业务运营商和数据中心可以为所有需要远程数据备份和容灾的企事业单位提供空间租赁和备份业务租赁服务。普通的企事业单位、中小企业可租用数据中心提供的空间服务和远程数据备份服务功能,建立自己的远程备份和容灾系统,以保证当本地发生重大的灾难时,可通过远程备份或远程容灾系统进行快速恢复。3.2.3 视频监控系统建立一个遍布全国的云存储系统,在这个云存储系统中可以内嵌视频监控平台管理软件,建设“全球眼”或“宽视界”系统。系统的建设者只需要安装摄像头和编码器等前端设备,并为每一个编码器、IP摄像头分配一个带宽足够的接入网链路,通过接入网与云存储系统连接,实时的视频图像就可以很方便地保存到云存储中,并通过视频监控平台管理软件实现图像的管理和调用。4 基于微软云计算技术服务平台系统基于云计算技术,架设在Windows Azure(云服务的操作系统)之上,基于Microsoft Visual Studio 2010软件开发环境,通过使用Azure提供云存储功能和SQL Azure(云关系型数据库),调用Windows Azure SDK(云计算服务Azure相关开发工具包)开发工具和云端服务接口,创建、构造基于WindowsAzure的集群技术,开发一个云应用系统。系统运用分层架构思想,采用B/S三层体系结构模式(数据访问层、业务逻辑层和表示层),不仅有B/S体系结构“瘦客户”端优点,更能体现“云”时代无需考虑初始化基础设施,自动完成后继扩展性的特点。 基于微软云计算技术服务平台系统将软件作为服务SaaS,是云计算服务类型中应用最为广泛的一种,即将软件功能封装成服务形式通过互联网,提供给用户按需使用,在这个过程中良好的用户界面对于用户的体验程度起着至关重要的作用,采用在线管理功能为云计算平台上运行的应用软件提供良好的前处理与后处理,以及作业管理。平台体系结构运用分层架构思想,类似于常用的B/S三层体系结构模式,基本分为:数据访问层、业务逻辑层和表示层,体系结构图如下所示。
4.1 数据访问层使用REST编程接口(HTTP/HTTPS方式)访问WindowsAzure Storage,创建Blob和Table存储用来存放作业数据文件和作业运行结果。4.2 逻辑业务层业务逻辑层是联系数据访问层和表示层的纽带,帮助建立与云数据库连接,根据用户请求生成检索语句或更新数据库,并使返回结果在表示层显示出来。本平台对所需要处理的用户管理、权限管理、日志管理等操作分别建立相关业务逻辑类,即完成了所需功能,又减少了各层之间的耦合度,增强了系统的安全性能。 作业调度对虚拟集群进行管理和监控,动态添加新的计算资源,弹性构建虚拟集群,实现用户的按需计算。主要包括3个模块:用户作业提交模块、虚拟集群弹性构建模块、虚拟集群信息监控模块。 1)作业提交模块 用户通过作业提交页面可以将任务递交到虚拟集群里进行运算,待作业运行完成获取运算的结果。作业提交模块流程图如图2所示。
2)虚拟计算弹性构建模块 当虚拟集群的计算资源不能满足用户申请所需的计算资源时,中间件平台就动态的虚拟出所需的虚拟机计算资源并动态添加到虚拟集群中以满足用户的需求。弹性构建虚拟集群流程图如图3所示。
3)虚拟集群信息监控模块 主要完成对虚拟集群各虚拟计算节点信息的监控,当作业成功提交并运行,监控模块采用Web页面的方式动态的显示各虚拟节点的运行状态。4.3 表示层表示层是程序架构最顶层,用户请求及信息获取都是通过该层获取,这里主要通过ASP.NET实现,ASPX页面实现HTML和程序代码的分离,把丰富的功能展现给用户,同时也使开发维护更简单安全。5 结束语云存储不是存储,而是服务。就如同云状的广域网和互联网一样。云存储对使用者来讲,不是指某一个具体的设备,而是指一个由许许多多个存储设备和服务器所构成的集合体。开发、部署一个高性能集群系统平台,利用云计算建立容错机制,保证若干节点失效时并不影响整个计算任务的进展。