[发明专利]一种提高固态盘阵列性能和可靠性的方法及系统有效
申请号: | 201711170076.9 | 申请日: | 2017-11-22 |
公开(公告)号: | CN107885620B | 公开(公告)日: | 2020-09-08 |
发明(设计)人: | 冯丹;梅林军;陈俭喜;曾令仿;刘景宁;张晓祎 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F3/06 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 廖盈春;李智 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提高 固态 阵列 性能 可靠性 方法 系统 | ||
1.一种提高固态盘阵列性能和可靠性的方法,其特征在于,包括:
(1)在所创建的固态盘阵列中增加数据位图表,将所述数据位图表中所有位初始化为0,其中,所述数据位图表位于非易失内存中,且所述数据位图表用于记录逻辑条带中包含的数据块和校验块是否被写入数据;其中,所述数据位图表中的位为0代表对应位未被写入数据;反之,代表对应位已写入数据;
(2)在接收到写请求时,找到与所述写请求对应的第一逻辑条带,结合所述数据位图表得到与所述第一逻辑条带对应的物理条带,根据所述物理条带确定重构写RCW需要读取的数据块个数以及读改写RMW需要读取的数据块个数,然后根据RCW和RMW中读取数据块个数之间的大小关系选择进行写请求处理的方式,并更新所述数据位图表;
(3)在恢复失效数据块时,根据所述失效数据块对应的第二逻辑条带在更新后的数据位图表中查找与所述失效数据块所对应的位,若所述失效数据块对应的位为0,则不进行恢复,若所述失效数据块对应的位为1,则采用所述第二逻辑条带数据位图表中对应的位为1的没有失效的数据块进行异或运算而恢复数据;其中,所述失效数据块的位为0代表对应位未被写入数据,所述失效数据块的位为1代表对应位被写入数据;逻辑条带为磁盘阵列中的条带,物理条带由逻辑条带中写入数据的数据块和校验块组成;
所述重构写RCW需要读取的数据块个数为所述第一逻辑条带对应的物理条带内不需要更新数据块的个数,所述读改写RMW需要读取的数据块个数为所述第一逻辑条带对应的物理条带内需要更新数据块的个数加上1;
步骤(2)包括:
(2.1)初始化所述重构写RCW需要读取的数据块个数rcw和所述读改写RMW需要读取的数据块个数rmw均为0;
(2.2)找到与所述写请求对应的第一逻辑条带,根据所述第一逻辑条带中的每个逻辑块在所述数据位图表中对应位的值以及是否需要有写请求确定rmw和rcw的值;
(2.3)若rcw等于0,则新的校验值等于所有需要更新的数据块的新值的异或;
(2.4)若rmw小于rcw,且rmw不等于0,则采用RMW方式读取需要更新且在所述数据位图表中对应位为1的数据块旧值和校验块旧值,将读取的数据块的旧值与所有需要更新的数据块的新值进行异或得到新的校验值;
(2.5)若rmw不小于rcw,且rcw不等于0,则采用RMW方式读取不需要更新且在所述数据位图表中对应位为1的数据块,将读取的数据块的值与所有需要更新的数据块的新值进行异或得到新的校验值。
2.根据权利要求1所述的方法,其特征在于,步骤(2.2)包括:
(2.2.1)找到与所述写请求对应的第一逻辑条带,对于所述第一逻辑条带中的每一个逻辑块,判断所述逻辑块在所述数据位图表中的位是否为1;
(2.2.2)若所述逻辑块在所述数据位图表中的位为1,则判断所述逻辑块是否需要有写请求或所述逻辑块是否为校验块;
(2.2.3)若所述逻辑块需要有写请求或所述逻辑块为校验块,则rmw值加1,若所述逻辑块不需要有写请求且所述逻辑块不为校验块,则rcw值加1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711170076.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:弹簧钳的制作方法
- 下一篇:一种接触网补偿坠砣吊具