云存储技术及其应用
近年来,随着云计算[1-2]和软件即服务(SaaS)[3-5]的兴起,云存储成为信息存储领域的一个研究热点。与传统的存储设备相比,云存储不仅仅是一个硬件,而是一个网络设备、存储设备、服务器、应用软件、公用访问接口、接入网和客户端程序等多个部分组成的系统[6]。
云存储提供的是存储服务,存储服务通过网络将本地数据存放在存储服务提供商(SSP)提供的在线存储空间。需要存储服务的用户不再需要建立自己的数据中心,只需向SSP申请存储服务,从而避免了存储平台的重复建设,节约了昂贵的软硬件基础设施投资。
云存储这个概念一经提出,就得到了众多厂商的支持和关注。Amazon公司推出弹性块存储(EBS)技术支持数据持久性存储;Google推出在线存储服务GDrive;内容分发网络服务提供商CDNetworks和云存储平台服务商Nirvanix结成战略伙伴关系,提供云存储和内容传送服务集成平台;EMC公司收购Berkeley Data Systems,取得该公司的Mozy在线服务软件,并开展SaaS业务;Microsoft公司推出Windows Azure,并在美国各地建立庞大的数据中心;IBM也将云计算标准作为全球备份中心扩展方案的一部分。
2009年12月,因特网数据中心(IDC)发布的2010年IT和电信行业十大预测中指出:云计算将扩张并走向成熟,会诞生许多新的公共云热点、私有云服务、云应用以及将公共云与私有云联系起来的服务。
1 云存储技术
云存储系统与传统存储系统相比,具有如下不同:第一,从功能需求来看,云存储系统面向多种类型的网络在线存储服务,而传统存储系统则面向如高性能计算、事务处理等应用;第二,从性能需求来看,云存储服务首先需要考虑的是数据的安全、可靠、效率等指标,而且由于用户规模大、服务范围广、网络环境复杂多变等特点,实现高质量的云存储服务必将面临更大的技术挑战;第三,从数据管理来看,云存储系统不仅要提供类似于POSIX的传统文件访问,还要能够支持海量数据管理并提供公共服务支撑功能,以方便云存储系统后台数据的维护。
基于上述特点,云存储平台整体架构可划分为4个层次,自底向上依次是:数据存储层、数据管理层、数据服务层以及用户访问层。云存储平台整体架构如图1所示。
(1)数据存储层
云存储系统对外提供多种不同的存储服务,各种服务的数据统一存放在云存储系统中,形成一个海量数据池。从大多数网络服务后台数据组织方式来看,传统基于单服务器的数据组织难以满足广域网多用户条件下的吞吐性能和存储容量需求[7];基于P2P架构的数据组织需要庞大的节点数量和复杂编码算法保证数据可靠性[8]。相比而言,基于多存储服务器的数据组织方法能够更好满足在线存储服务的应用需求[9],在用户规模较大时,构建分布式数据中心能够为不同地理区域的用户提供更好的服务质量[10]。
云存储的数据存储层将不同类型的存储设备互连起来,实现海量数据的统一管理,同时实现对存储设备的集中管理、状态监控以及容量的动态扩展,实质是一种面向服务的分布式存储系统。
(2)数据管理层
云存储系统架构中的数据管理层为上层提供不同服务间公共管理的统一视图。通过设计统一的用户管理、安全管理、副本管理及策略管理等公共数据管理功能,将底层存储及上层应用无缝衔接起来,实现多存储设备之间的协同工作,以更好的性能对外提供多种服务。
(3)数据服务层
数据服务层是云存储平台中可以灵活扩展的、直接面向用户的部分。根据用户需求,可以开发出不同的应用接口,提供相应的服务。比如数据存储服务、空间租赁服务、公共资源服务、多用户数据共享服务、数据备份服务等。
(4)用户访问层
通过用户访问层,任何一个授权用户都可以在任何地方,使用一台联网的终端设备,按照标准的公用应用接口来登录云存储平台,享受云存储服务。
与传统的购买存储设备和部署存储软件相比,云存储方式存在以下优点:
(1)成本低、见效快
传统的购买存储设备或软件定制方式下,企业根据信息化管理的需求,一次性投入大量资金购置硬件设备、搭建平台。软件开发则经过漫长的可行性分析、需求调研、软件设计、编码、测试这一过程。往往在软件开发完成以后,业务需求发生变化,不得不对软件进行返工,不仅影响质量,提高成本,更是延误了企业信息化进程,同时造成了企业之间的低水平重复投资以及企业内部周期性、高成本的技术升级。在云存储方式下,企业除了配置必要的终端设备接收存储服务外,不需要投入额外的资金来搭建平台。企业只需按用户数分期租用服务,规避了一次性投资的风险,降低了使用成本,而且对于选定
- 云存储中的虚拟化技术构成及应用分析(09-12)
- 基于云存储视频监控系统的研究(09-12)
- 云存储应用中的加密存储及其检索技术(10-09)
- linux客户端访问samba服务器的指令(03-25)
- Linux操作系统下中文字体的安装(04-10)
- 如何优化Linux服务器硬盘性能实用技巧(07-10)