[发明专利]一种虚拟SSD与SSD异构镜像的磁盘阵列缓存方法有效
申请号: | 201310583574.1 | 申请日: | 2013-11-19 |
公开(公告)号: | CN103645859A | 公开(公告)日: | 2014-03-19 |
发明(设计)人: | 万继光;刘庆宾;谢长生;吴畏 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 朱仁玲 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟 ssd 异构镜像 磁盘阵列 缓存 方法 | ||
1.一种虚拟SSD与SSD异构镜像的磁盘阵列缓存方法,其特征在于,包括以下步骤:
(1)将磁盘进行逻辑分区为两个部分,其中上半部分组成RAID0或RAID5结构作为虚拟SSD,用于备份真实SSD中脏数据,虚拟SSD采用日志写的方式,并设置有ram写缓存,也可以用独立的磁盘来做虚拟SSD。下半部分根据用户需要组装成不同RAID结构,用作数据阵列,以存放冷数据;
(2)建立数据盘和真实SSD缓存之间地址映射哈希查找表,设置计时器,用于定期地将虚拟SSD的ram写缓存中缓存的数据写入到虚拟SSD中;
(3)接收来自上层文件系统的请求,对于读请求,当读请求不在真实SSD中命中时,从数据阵列中读取数据即可,当读请求在真实SSD中命中时,直接从真实SSD中读出该读请求对应的数据即可,对于写请求,当写请求不在真实SSD中命中时,直接将其写入数据盘中即可,当在真实SSD中命中时,把写请求对应的数据写入到真实SSD,并以日志写方式写入虚拟SSD中。
2.根据权利要求1所述的磁盘阵列缓存方法,其特征在于,步骤(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)将该读请求对应的数据块返回给上层文件系统,过程结束;
(3-7)根据该写请求的逻辑地址获得请求块号,根据请求的数据块块号在(2)中地址映射哈希查找表中进行查找,判断该表中是否存储有该请求块号对应在真是SSD中块地址,如果存在,进入步骤(3-11),否则转入步骤(3-8);
(3-8)将该写请求对应的数据块写入数据阵列中,并判断计时器是否达到规定的计时周期,若到达计时周期,则进入步骤(3-9),否则进入步骤(3-10);
(3-9)根据数据淘汰算法选取真实SSD中变冷的数据淘汰到数据阵列中,并将数据阵列中变热的数据写入真实SSD中,然后进入步骤(3-10);
(3-10)将该写请求对应的数据块返回给上层文件系统,过程结束;
(3-11)将该写请求对应的数据写入其在真实SSD中的对应位置;
(3-12)把该写请求对应的数据以日志写方式写入虚拟SSD中,过程结束。
3.根据权利要求2所述的磁盘阵列缓存方法,其特征在于,步骤(3-12)包括以下子步骤:
(3-12-1)判断虚拟SSD的ram写缓存中数据是否已满,并根据计时器判断时间是否达到写入周期的结束,如果数据未满且时间没有到达写入周期的结束,则进入步骤(3-12-5),如果数据已满或者时间达到写入周期的结束,则进入步骤(3-12-2);
(3-12-2)判断虚拟SSD空间是否已满,如果已满,则对虚拟SSD空间进行整理,然后进入步骤(3-12-3),否则,直接进入步骤(3-12-3);
(3-12-3)把虚拟SSD的ram写缓存中缓存的数据整体写入虚拟SSD的当前条带指针cur所指向的条带,清空虚拟SSD的ram写缓存,同时,将虚拟SSD中受影响而变旧的副本数据作废;
(3-12-4)虚拟SSD的当前条带指针cur向下移动若干条带的距离,移动的距离是由ram缓存了的数据条带数而定;
(3-12-5)把数据写入虚拟SSD的ram写缓存,过程结束。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310583574.1/1.html,转载请声明来源钻瓜专利网。