计算技术研究所数据存储技术研究中心

存储科普 当前位置 >> 计算所数据存储技术研究中心 >> 存储科普

解读存储虚拟化

发布日期:2011-08-19

一、 何为“存储虚拟化技术”
   “存储虚拟化”并不是近期才提出的一个新概念,它是伴随着大型计算机的产生、发展而出现的一个较为经典的概念,但随着网络存储的兴起,在新的领域中,存储虚拟化又被赋予了全新的解读,不过从存储的核心功能来看,其本质是具有延续性的。


(一) 存储虚拟化的概念
  从广义的角度看,存储具有两大特性:其一,它是具有存取数据功能的载体;其二,它具有可管理性。
  存储虚拟化是物理存储的逻辑表示方法,是在服务器与存储之间设置的一个抽象层,服务器被绑定到逻辑抽象层上。于是,无论何时如果需要都可以改变所连接的物理存储,典型的如阵列的替换、层次化存储等,而不会影响应用对这个存储的访问。存储虚拟化也正是紧紧围绕着这两个主要方面展开的。
  从狭义的角度看,存储是具有两个访问通道的实体,数据通道和管理通道就是对此的简单描述。二者在物理上可以是聚合的,也可以是分离的,而存储虚拟化就相应地发生在这两个通道上。
  在理论上可以认为,相对于原存储实体,新的存储实体在数据和管理通道上所进行的任何非恒等的转换,都是一种存储虚拟化方法。概括地讲,所谓存储虚拟化可以简单地描述为:新存储实体对原存储实体的存储资源(如存储的读写方式、连接方式、存储的规格或结构等)和存储管理(如统一/分散管理)进行变化和转换的过程称为存储虚拟化。


(二) 存储虚拟化的技术分类
  一般认为存储虚拟化是有所特指的,大致可以从以下两大类来划分:


1、 存储资源的虚拟化
* 存储的规格或结构
  从早期的磁盘分区到现在具有复杂结构的磁盘阵列,对存储规格或结构的虚拟化始终作为一种最基本的虚拟化形式而不断发展,这是存储虚拟化的一个最为基本的特性之一——可分性。
  属于这一类的存储虚拟化产物有:RAID、虚拟网络磁盘等,在可以预见的未来,这类存储虚拟化方式将伴随着人们对块存储的需求,以及对存储安全性与性能的不懈追求仍将长期存储,并且适度发展。
  在结构虚拟化方面,设备冗余和资源空洞是两个完全不同的类型,设备冗余可以实现同步、异步镜像等,而资源空洞主要采用写时分配的技术,在提高资源利用率方面表现更为突出,它能够使得呈现给主机的逻辑卷大小远大于实际的物理存储大小;而快照技术更是实现了源和快照依赖于相同的存储资源,形成一种典型的一个虚拟多个的方式。


* 读写方式
  到目前为止,存储的读写方式可以归纳为四种主要形式:块读写方式、文件读写方式、对象读写方式和键值搜索读写方式,四种形式依次递进(如下图示意),对存储的抽象层次不断提高,使得应用(程序等)对存储的依赖程度逐渐降低,存储的智能性不断提升,进而也就不同程度地实现存储与应用的分离。在本质上,也逐步实现在计算机系统中,处于不活跃地位的存储与处于活跃地位的计算之间的分离,而归根结底,其源动力来自于人们对不断提高数据共享效率的需求。
  可以看出,存储读写方式的演进,在客观上也对存储规格和结构的发展提出了要求,但存储读写方式的演进并不依存于存储规格和结构的发展。

图、四种存储读写方式关系示意
  在相当长的一段时间内,块读写方式和文件读写方式都将继续占据主流的地位,而其他两种方式由于受到应用模式和存储发展的某些关键技术的制约,仍将处于产品的缓慢发展和研究的相对快速发展的矛盾过程中,可以预见随着对象文件系统、对象操作系统、存储网格,以及搜索引擎和数据安全等方面技术的不断发展,基于对象读写方式和键值搜索读写方式的存储设备、存储系统、存储服务比较成长为主流方式。


* 连接方式
  网络存储的连接方式主要有Fibre Channel(FC)、InfiniBand(IB)、IP三种。三种方式各具特色,但总的来说,FC设备在高端存储系统采用较多;IB设备的高带宽和高吞吐率在高性能计算领域有相当的优势,但经历了Intel、微软放弃支持和戴尔、IBM与SUN宣布支持的一落一起之后,IB的发展还不明朗;在性能和标准的制约下,IP网络存储长时间在中低端市场徘徊,但由于无处不在IP网络和其极具诱惑力的价格,近乎无限的延伸扩展能力,以及传输标准和正在快速提升的硬件性能,可以预见IP存储的市场将会作为企业存储解决方案的主要选择之一。


  不同的存储连接方式,也对应着不同的存储特性,存储虚拟化技术可以将融合多种连接方式(包括上述三种方式)的优势,更好地满足应用的需求。


2、 存储管理的虚拟化
* 集中管理

  网络存储发展到今天,出现了很强的旨在体现集中管理的聚合趋势,大型存储系统和超大型的存储系统不断出现,高性能、高可用、高数据安全性和大容量成为其主要的发展目标。但伴随而来的是存储管理的复杂性也一升再升,不同的存储系统之间无法实现有效地级联(管理方面),甚至这一现象也出现在同一厂商的系列产品中,进而也使得存储资源无法实现有效地管理和使用,复杂的管理和相应的高管理成本都阻碍了网络存储的发展。


  面对这一现实问题,统一存储管理标准问题愈显突出,这也是制约存储虚拟化,乃至于网络存储工业发展的关键症结所在。


  为了从根本上解决这一问题,全球范围内的许多存储厂商、研究和学术机构在网络存储工业协会(SNIA)的积极倡导下,开始了网络存储管理的标准化过程,随着这一过程的不断发展和推进,必将冲破技术和市场壁垒,为存储管理的虚拟化提高现实的基础。


* 分散管理
  在使用存储的某些特定场合,所虚拟出的资源应具有一定的独立可管理特性。
* 性能的动态调整
  在共享网络带宽的情况下,虚拟出的多个设备其之间的性能,可动态调节或可动态配置。


(三) 存储虚拟化系统的结构分类
  在网络存储领域,实行存储虚拟化的手段大致可以从以下两方面考虑:
  一方面,按虚拟化模块在网络存储中的位置划分为三类:基于主机、基于网络和基于存储设备节点;基于网络的虚拟化是发展的潮流,这一点,IBM与EMC的观点是相同的。


  另一方面,按照虚拟化管理模块相对于数据通道的位置,划分为带内(In-Band)和带外(out-of-band)。
  In-Band虚拟化模块(引擎)位于主机和存储节点之间的数据通道上,因为位于数据读写的关键路径上,所以既有安全性高、实现容易、对主机要求低等优点,又有扩展性差、易形成单点故障等明显的结构缺点,通常利用Cache技术来优化性能。


  与In-Band不同的是,Out-of-Band虚拟化模块位于主机和存储节点之间的数据通道之外,通过其它的网络连接方式与主机系统通讯。于是,在每个主机服务器上,都需要安装客户端软件,或者特殊的主机适配卡驱动,相比于In-Band方式,这种方式的系统可扩展性很强,虚拟化模块不会在数据通道上成为单故障点,但其实施难度比较大。


(四) 存储虚拟化与信息生命周期管理(ILM)的关系
  由于数据和存储直接密不可分的关系,分析数据的发展变化特性非常必要,从某种程度上说,数据是存储存在的根据。


  存储虚拟化是数据生命周期的内在需求。数据产生后首先处于比较活跃的时期,处于这一时期的数据对企业而言具有很大的价值,而最活跃的时期通常会在随后出现,这主要取决于数据的类型等因素。在数据的生命周期中,可能会出现几个活跃期,伴随数据活跃期的出现会产生大量相关数据,而数据历经几次活跃期后,会出现不同程度的衰减甚至被销毁。IDC曾建议把数据分为5层,即:重要数据、关键业务数据、可访问的在线数据、近线数据和离线数据;对于数据拥有者而言,在数据所处的不同时期配以不同性能和特性的存储是一种最为经济的选择,为了方便地实现数据的管理和迁移,存储虚拟化技术便成为当之无愧的首选。


  目前,SNIA正在为信息生命周期管理寻求一个标准,可以认为,在信息生命周期管理的助力下,存储虚拟化技术和产品市场可以得到更大的发展。


二、 存储虚拟化的未来发展方向
(一) 存储网格

  自从网格思想产生之初,人们就常以电力网为例来类比网格的思想和现实形态,这无疑是一种较为现实的、易于理解的类比方式,也道出了网格的很多本质特性,自治性(机制)和共享性(机制)是人们关注网格的最主要原因。但不得不提的是,作为一个系统网格必须是可控的,这一点在现实的电力网中也是如此。同时,网格也必须是可测量的、安全的,这几点是作为现实可行的技术所必须具备的条件,而正是在这样几点上对网格的发展,构成了很大的障碍,原因在于到目前为止,在这些方面的理论和技术准备并不充分。


  存储网格是实现存储资源自主、有序、合理“流动”的系统,由存储网格软件所构成的存储资源的势能评价体系(内存“脏”页的标记就是一种简单的评价)为存储资源的调配提供了可实时决策的依据。存储资源是一种概念抽象,它既可能包含了类似Cache这样易失特性的存储介质,也可能包含了磁盘存储、磁带存储这样的非易失性存储,而光盘存储也是可以涵盖在其中的,那么应该如何理解存储资源的“流动”呢,存储资源的“流动”表现为由存储网格软件所评价出的存储资源对象的特性与数据对象的匹配过程,例如:数据对象的重要性或安全性需求降低后,原来用来保存该数据对象的存储资源对象将不适合,那么也就产生了数据对象迁移的需求,而存储网格可以按照一定的规则实现这一自动的迁移过程,从而产生了存储资源的“流动”(由此也可以看出这种所谓的“流动”有如电流和电荷的关系一样,是一种相对的概念,是一种理论抽象的结果)。存储网格中实现共享和自治机制的存储网格软件,以及实现存储对象与数据对象匹配的操作等等是存储网格的技术支撑,而这些软件所依托的理论和实现模型,以及对象(包括存储资源对象、数据对象、系统资源对象等)的概念抽象是存储网格的核心之所在。


  目前,存储网格被理解为多种多样的形式,但多片面地强调其某一个侧面,而忽略了其内在规律性,无论是将存储网格描述为全交换或全联通的网络拓扑结构,还是强调它所带来的灵活性、安全性、互操作性等等,包括p2p技术,这都是存储网格的外在表现或实现层面的局部特征,而构成存储网格的核心思想并不在于此。


  存储网格从思想到实现并不存在半点玄妙的东西,它所想表达的思想和技术是人们习以为常的众多自然、物理规律,乃至社会规律在计算机系统构成中的自然延伸,存储网格将是人们尊重规律来发展技术的必然选择。而就存储虚拟化这一论题而言,存储网格与其并不在一个层面上,但从广义上讲存储网格是存储虚拟化技术的归宿之一。


(二) 以数据为核心的存储构成理念
  随着人们对信息需求的不断增长,数据量呈现不断激增的态势,其直接表现是社会各单位对于存储资源的需求量也越来越大,而随着整个社会对信息的依存度的不断提高,信息载体——数据的重要性也随之得到提升。由此也促使着人们的管理理念正从以计算为核心、以存储为核心逐步转向以数据为核心,随着数据存储容量和数据服务种类的增加,如何更为合理、有效地保证数据服务质量的问题便愈显突出,但目前的解决方式还是在单一HSM的配置下,对所有的数据服务均配以相同质量的存储服务,或者人为地针对不同数据服务要求设定存储服务质量,例如ILM管理理念指导下的方法,但这些都不是从根本上给出解决这一问题的方法。


1、 现有的存储构成理念
  从网络存储设备及接口方面考虑,卡耐基梅隆大学(Carnegie-Mellon University或CMU)还在研究和标准化NASD(Network Attached Secure Disk);从智能化磁盘设备方面,国外已有一些相关研究。从国内来看,网络存储方向的新技术研究相对较少。
* NASD


  CMU的NASD(Network Attached Secure Disk)是一个较早提出的磁盘系统。它的提出为网络智能磁盘的标准化做出了很大的贡献。美国国家存储工业委员会NSIC(National Storage Industry Consortium)提出的OSD(Object-Based Storage Device)模型就是基于NASD。


  这些系统的研究重点是存储设备的功能及其接口协议。NASD提供给用户的不是磁盘块接口,而是磁盘对象接口。在多数情况下,磁盘对象都是对应着文件。一个磁盘对象可以有许多由磁盘系统管理的属性,其中包括大小、各种时间等。


* 活跃磁盘设备(Active Disk)
  卡耐基梅隆大学(Carnegie Mellon University)和加州大学的Santa Barbara分校与马里兰大学(Maryland University)分别进行了活跃磁盘相关的研究项目。


  两个关于活跃磁盘的研究项目都是利用磁盘内部的CPU和内存资源。随着硬件技术及磁盘技术的发展,磁盘内部的CPU及内存资源越来越丰富。在近几年内,服务器所使用磁盘内部的嵌入式CPU可达到200 MIPS的处理能力,而内存容量也相应地可达到32MB~64MB。活跃磁盘的这两个研究项目就是研究和设计一个分布式的系统结构,使得应用程序的一部分可以动态地下载到磁盘中去并在磁盘的运行环境中执行。其结果不仅充分地利用了磁盘的处理能力,大大降低了存储容量的增长速度与CPU处理能力的增长速度之间的差异。与此同时,由于磁盘内嵌入式CPU的有效使用,大大降低了对于I/O带宽的要求。


  卡耐基梅隆大学所进行的项目主要研究基于扫描算法的各种应用,其中包括最近邻居的查找,常用的集合,以及图像边缘的探测等。这些问题对于磁盘的处理能力及内存容量要求都较低,对于磁盘间的通讯没有任何要求。


  加州大学的Santa Barbara分校与马里兰大学联合所进行的项目主要研究类似的问题,其中包括数据库内的选择操作,并行排序,数据立方操作,以及图像处理等。该研究要求更强的磁盘CPU处理能力及内存容量,对于磁盘间的通讯也有一定要求。


* 智能磁盘设备(Intelligent Disk)
  在活跃磁盘研究项目的基础上,加州大学的伯克利分校开始了智能磁盘设备的研究。与活跃磁盘不同,智能磁盘对于磁盘的CPU能力、内存容量、磁盘间的通讯带宽都有更高的要求。与此相应,智能磁盘除了针对数据库、决策支持系统之外,还面向更为广泛的应用,其中包括降低数据写延迟、软件RAID的实现、系统自动配置等。
  在智能磁盘的研究中,还有许多问题并未能够解决。例如,智能磁盘的软件系统结构,及智能磁盘的操作系统所应提供的服务等。


* 自省存储设备(Introspective Storage for Data-Intensive Network Services)
  与前面几个研究项目类似,加州大学的伯克利分校所进行的自省存储设备项目也是在充分意识到存储容量的增长与CPU处理能力的增长之间的差异,基于嵌入式CPU技术的发展和普及所设计的一种新型智能存储系统结构。与以上的研究不同,处理试图解决系统的性能和可扩展性外,该项目的研究焦点更集中在系统的高可用及自我管理和维护功能方面。其所面向的应用主要包括电子商务、信息检索和获取、以及在线决策支持等。


  在这个系统结构中,I/O设备,特别是存储设备,都具有智能处理能力,并且成为系统的最为基本的子系统。从硬件构成方面,自省系统是以I/O为核心,所有的设备都是标准的、可互换的,通过智能机箱与网络相连,从而构成完整系统。软件系统的系统结构主要支持各种的系统检测和相应处理能力的需求,并且系统能够自动生成常用的检测和处理程序。该项目已衍变为另一个研究领域:ROC(Recovery Oriented Computing)。


  上述研究的重点更多地还是关注于系统的计算能力,I/O是所有优化的核心,但从中也可以看到有些研究开始关注于应用的特性,如上述的活跃磁盘设备和智能磁盘设备,而这仅仅是一种理念转变的开端。


2、 现有存储构成理念的问题
  HSM是在以计算为中心的历史条件下,由IBM首先提出的一种存储管理结构。为了更好地适应计算能力的发展速度,计算机系统的构成必须将存储部件按照与计算部件的交互关系有层次的连接,与计算部件直接交互的为读写速度最快的存储部件,其它间接交互的存储部件的读写速度次之,依次形成了一级Cache、二级Cache、内存以及磁盘设备或磁带设备这样一个分层的存储管理结构,这种构成的主要出发点是为了使存储能力适应计算能力。
  ILM是二十世纪九十年代产生的一种以合理使用存储资源为目标的理念,它之所以没有能够像HSM一样在存储系统结构方面产生较大的影响,原因在于人们对于存储系统的理解普遍认识是,存储系统是计算机系统中最不活跃的成分,它受硬件构成等因素的影响无法实现自主灵活性。因此,ILM仅停留在管理理念的层面上,而具体体现在数据管理功能上,对存储系统的需求是对多介质存储系统的统一管理。


3、 以数据为核心
  计算系统存在的价值在于它能够实现数据处理功能,计算系统是一种重要的、难以替代的工具,但无论怎样,数据才是最终的核心所在,在以数据为核心的理念指导下,存储系统构建的思想也必然应该进行相应的调整。
  以数据为核心首先关注的是存储如何更好地表达和体现数据对象的特性,从这一观察角度来看,适应数据对象特性的变化,存储结构必然是对象化的,HSM和ILM仅是一些特例的实现手段,而存储的性能(带宽、缓存等)、存储的效能(造价、能耗)、存储的安全性(有无单点故障、是否支持冗余)等等都是描述存储对象所应考虑的重点,这将是存储虚拟化未来发展的重要方向之一。


三、 结束语
  纵观网络存储市场,存储虚拟化技术产品已经非常普遍,但用户所渴求的、能够实现对异构系统或多厂商产品进行统一管理的存储虚拟化技术和产品并不多,而且对于中低端市场用户来说,这些产品还难以企及,这也预示着,这方面的存储虚拟化技术和产品的广阔市场前景。随着国内外存储厂商的不断努力,以及网络存储管理标准的不断推进,预计在3到5年的时间内会有很大的突破。