数据存储产业服务平台

基于服务质量保证的存储虚拟化

当前的存储市场已经相当庞大,存储虚拟化是存储技术领域研究和开发的热门话题之一,其实这一概念已经有悠久的历史,90年代Gibson的RAID的提出实际就是一种虚拟化。RAID可以将多个物理磁盘组合成一个更大的逻辑空间,与之相似的工作还有LVM等卷管理系统,但这一虚拟化都是在同一主机上进行的,随着技术的进步,网络存储技术如SAN, NAS等已经成为企业存储解决方案的主流,在此基础上,网络主机的虚拟化再次成为研究的热点内容。大体上,存储虚拟化分为三种类型:基于设备的虚拟化,如硬件RAID接口等;基于主机的虚拟化,如软件RAID,LVM驱动等,基于网络的虚拟化,如当今很多分布式存储系统提供的带外虚拟化,数据存储管理工作由专门的元数据服务器完成。

以往对存储系统虚拟化的研究都是基于存储空间的虚拟化,并未考虑存储系统性能问题,近年来,对存储空间性能的虚拟化逐渐成为研究的热点,几乎每届存储系统国际会议(MSST, FAST)都有专门的文章对此进行讨论。其主要特点是:应用程序对存储系统的要求不再仅限于存储空间,存储性能因素(如访问延迟,访问带宽等)也将成为重要的需求,所以,虚拟化将在多维空间上进行,当前比较成功的系统是stonehenge等。这一领域的研究多是结合网络研究中的Qos原理,将Qos引入存储系统,其中最重要的就是访问控制(Admission Control)和调度(schedule)算法。一个方向是根据访问流的优先级分为BE(best effort)、SR(soft realtime)和HR(hard realtime)进行区分调度,提出集成调度框架,其中SR是指满足统计学服务质量保证的进程,而HR是指绝对服务质量保证的访问流。另外一个研究方向就是共享存储中的performance isolution,多个虚拟disk如何协同工作,全部满足各自的服务需求,这就是存储系统的访问控制。还有另外之中是针对特定设备特征的调度算法,现在主要集中于OSD设备。

这一领域的文章很多,我的研究路线是先理清经典的算法如VC, EDF, SFQ等等,参照经典的系统stonehenge等,结合网络Qos的研究成果,看是否可以向存储系统移植,来完成集成调度框架的设计,在系统设计上不仅局限于流媒体设备的高层调度,更加注重底层的访问控制和调度算法。最后参照OSD设备的特定,看是否有突破。

未经允许不得转载:存储在线-存储专业媒体 » 基于服务质量保证的存储虚拟化