[发明专利]一种虚拟SSD与SSD异构镜像的磁盘阵列缓存方法有效
申请号: | 201310583574.1 | 申请日: | 2013-11-19 |
公开(公告)号: | CN103645859A | 公开(公告)日: | 2014-03-19 |
发明(设计)人: | 万继光;刘庆宾;谢长生;吴畏 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 朱仁玲 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟 ssd 异构镜像 磁盘阵列 缓存 方法 | ||
技术领域
本发明属于数据存储技术领域,更具体地,涉及一种虚拟SSD与SSD异构镜像的磁盘阵列缓存方法。
背景技术
固态硬盘采用闪存作为存储介质,因此相对于传统磁盘,没有了磁头寻道的机械过程,其读写性能大大优于磁盘,尤其是随机的读写性能。将SSD引入存储系统中,从而大大提高了整个系统的性能。目前来看,SSD的容量也比一般磁盘要小许多,难以满足现在大量数据的应用情景。业界目前使用SSD主要作为分级存储介质,SSD缓存,相比传统的内存缓存,SSD可以提供更大的缓存空间,把经常访问的热数据存储在SSD中,把访问较少的冷数据存储在磁盘设备上。对于目前海量数据的存储需求,由于其中有大量的是冷数据,都将其存储在后端的磁盘设备上,通常采用磁盘阵列的形式组织起来。
但是,单独SSD做缓存依然存在以下缺陷:首先,价格昂贵,而且随着容量的增大价格更加昂贵;其次,SSD的擦写次数有限,写入数据之前会完成擦除工作,相比普通磁盘,SSD的使用寿命更短,从而也造成了使用SSD系统的可靠性的问题。对于SSD作缓存可靠性的保证,可以采用写穿的方式实现,从而确保了SSD在数据磁盘中有数据备份。但是,采用写穿方式,写请求则会响应变慢,减小了SSD缓存高速的优势。
另一种普遍的方式是采用另一SSD和原缓存SSD组成类似RAID1结构的双镜像方式,以保证可靠性,但这会导致整个系统成本大大增加。
还有一种普遍的方式是简单采用普通磁盘做SSD的镜像,以保证可靠 性,然而,由于一般磁盘相比较SSD性能不好,此时,当写命中发生时,数据同时写入SSD和镜像磁盘,显然镜像磁盘会成为性能瓶颈,大大减小了SSD缓存高速的优势。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种虚拟SSD与SSD异构镜像的磁盘阵列缓存方法和系统,其目的在于,针对单独SSD做缓存的可靠性问题,双SSD镜像带来的成本开销问题,以及磁盘做SSD镜像带来的性能问题,提出了一种兼顾性能,可靠性和成本开销的方案。
为实现上述目的,按照本发明的一个方面,提供了一种虚拟SSD与SSD异构镜像的磁盘阵列缓存方法,包括以下步骤:
(1)将磁盘进行逻辑分区为两个部分,其中上半部分组成RAID0或RAID5结构作为虚拟SSD,用于备份真实SSD中脏数据,虚拟SSD采用日志写的方式,并设置有ram写缓存,下半部分根据用户需要组装成不同RAID结构,用作数据阵列,以存放冷数据;
(2)建立数据盘和真实SSD缓存之间地址映射哈希查找表,设置计时器,用于定期地将虚拟SSD的ram写缓存中缓存的数据写入到虚拟SSD中;
(3)接收来自上层文件系统的请求,对于读请求,当读请求不在真实SSD中命中时,从数据阵列中读取数据即可,当读请求在真实SSD中命中时,直接从真实SSD中读出该读请求对应的数据即可,对于写请求,当写请求不在真实SSD中命中时,直接将其写入数据盘中即可,当在真实SSD中命中时,把写请求对应的数据写入到真实SSD,并以日志写方式写入。
优选地,步骤(3)包括以下子步骤:
(3-1)接收来自上层文件系统的请求,并判断该请求是读请求还是写请求,如果是读请求则转入步骤(3-2),如果是写请求则转入步骤(3-7);
(3-2)根据该读请求的逻辑地址(Logical Block Address,简称LBA)对应的数据块块号在(2)中地址映射哈希查找表中进行查找,判断该表中 是否存储有该请求块号对应在真是SSD中块地址,如果存在,则表示该读请求对应的数据块存储在真实SSD中,并进入步骤(3-3),否则表示该读请求对应的数据块没有在真实SSD中缓存,然后转入步骤(3-4);
(3-3)从真实SSD中读取该读请求对应的数据块,并将该数据块返回给上层文件系统,过程结束;
(3-4)从数据阵列中读取该读请求对应的数据块,并判断计时器是否达到规定的计时周期,若到达计时周期,表示需要进行数据阵列中热数据选取和真实SSD中冷数据淘汰,则进入步骤(3-5),否则进入步骤(3-6);
(3-5)根据数据淘汰算法选取真实SSD中变冷的数据淘汰到数据阵列中,同时作废虚拟SSD中的对应副本,并将数据阵列中变热的数据写入真实SSD中,然后进入步骤(3-6);
(3-6)将该读请求对应的数据块返回给上层文件系统,过程结束;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310583574.1/2.html,转载请声明来源钻瓜专利网。