[发明专利]一种基于批量写校验的独立磁盘冗余阵列读写方法有效
申请号: | 201610649825.5 | 申请日: | 2016-08-10 |
公开(公告)号: | CN106293990B | 公开(公告)日: | 2019-06-07 |
发明(设计)人: | 王芳;冯丹;华宇;李楚 | 申请(专利权)人: | 华中科技大学 |
主分类号: | G06F11/10 | 分类号: | G06F11/10;G06F3/06;G06F12/0893;G06F12/0877 |
代理公司: | 华中科技大学专利中心 42201 | 代理人: | 李智 |
地址: | 430074 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于批量写校验的独立磁盘冗余阵列方法,属于数据储存领域。该方法将固态盘作为磁盘阵列的缓存设备;当进行写请求时,若固态盘没有命中写请求,则将写请求数据块写入磁盘阵列并更新校验块,否则将写数据块写入磁盘阵列但不更新校验块,将写请求数据和原数据进行异或计算并对计算结果进行压缩得到差量编码,待到回收固态盘缓存块时,再将存入固态盘的差量编码批量转换为校验块写入磁盘阵列;当进行读请求时,若固态盘命中读请求,则从固态盘中读取对应的数据块完成读请求,否则从磁盘阵列中读取对应数据块,并将该数据块读入到固态盘中。本发明方法减少了独立磁盘冗余阵列的小写开销,并提升了固态盘的寿命。 | ||
搜索关键词: | 一种 基于 批量 校验 独立 磁盘 冗余 阵列 方法 | ||
【主权项】:
1.一种基于批量写校验的独立磁盘冗余阵列读写方法,其特征在于,该方法包含以下步骤:(1)请求判断步骤;判断若是写请求则进入步骤(2),否则进入步骤(3);(2)上层应用写请求步骤;若固态缓存盘没有命中写请求数据块,则将该数据块写入磁盘阵列并更新校验块;否则将写请求数据块写入磁盘阵列但不更新校验块,将固态缓存盘中对应的数据块与内存中写请求数据块进行异或计算并对结果进行压缩得到差量编码;将差量编码存储至固态缓存盘,待回收固态缓存盘数据缓存块时再将差量编码批量转换为校验块写入磁盘阵列,请求结束;(3)上层应用读请求步骤;若固态盘缓存盘没有命中读请求数据块,则从磁盘阵列中读取对应数据块,并将数据块写入到固态缓存盘中;否则从固态缓存盘中读取对应数据块,并判断是否有关联的差量编码,若没有则直接返回数据块,否则读取差量编码解压缩并与数据块进行异或得到所需数据返回,请求结束;所述上层应用写请求步骤包含以下子步骤:(11)查找固态缓存盘,若命中写请求数据块则转入步骤(12),否则转入步骤(18);(12)将写请求数据块写入磁盘阵列但不更新校验块,同时将固态缓存盘中对应的数据缓存块读入内存,与写请求的数据块进行异或计算并对计算结果进行压缩得到差量编码;若存在对应的旧版本的差量编码,则将之删除;(13)检查NVRAM缓存中是否有足够的空间保存新产生的差量编码,若没有则转入步骤(14),否则跳转到步骤(17);(14)检查固态缓存盘中是否有空闲缓存块,若没有则转入步骤(15),否则转入步骤(16);(15)触发固态缓存盘缓存空间回收线程,并等待空闲缓存块的数量超过阈值;(16)从固态缓存盘中分配一个空闲缓存块,将NVRAM缓存中已有的差量编码打包写入,并将此缓存块定义为差量缓存块,之后清空NVRAM缓存;(17)将新的差量编码写入到NVRAM缓存,写请求处理结束;(18)检查固态缓存盘中是否有空闲缓存块,若没有则转入步骤(19),否则跳转到步骤(110);(19)触发固态缓存盘缓存空间回收线程,并等待空闲缓存块的数量超过一定阈值;(110)将写请求数据块写入磁盘阵列并更新校验块,同时将该数据块写入固态盘缓存;等所有写入完成,写请求处理结束。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610649825.5/,转载请声明来源钻瓜专利网。
- 上一篇:电源板及具有其的烹饪器具
- 下一篇:用于电解水供电换向电路结构