[发明专利]基于非易失性存储器的动态独立冗余阵列存储系统及方法有效
申请号: | 201210256754.4 | 申请日: | 2012-07-23 |
公开(公告)号: | CN103577111A | 公开(公告)日: | 2014-02-12 |
发明(设计)人: | 阳学仕;周溱 | 申请(专利权)人: | 上海宝存信息科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F11/10 |
代理公司: | 上海金盛协力知识产权代理有限公司 31242 | 代理人: | 王松 |
地址: | 200437 上海市杨浦*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 非易失性存储器 动态 独立 冗余 阵列 存储系统 方法 | ||
技术领域
本发明属于数据存储技术领域,涉及一种动态独立冗余阵列存储系统,尤其涉及一种基于非易失性存储器的动态独立冗余阵列存储系统;同时,本发明还涉及一种上述动态独立冗余阵列存储系统的存储方法。
背景技术
RAID技术在数据存储领域中有广泛的应用。RAID(Redundant Array of Independent Disks或者是Redundant Array of Independent Devices)利用数据和设备的冗余度而防止由于磁盘或者存储设备的失效造成的数据丢失。RAID根据保护层度需求不同而有不同的架构,如RAID-1,RAID-2,RAID-3,RAID-4,RAID-5and RAID-6等。以下陈述以RAID-5为例。需要指出的是该发明可以很容易扩展到其它的RAID方式,如RAID-6,RAID-10等。
传统的RAID-5架构如图1所示。其中,A1,A2,A3代表用户数据,而Ap=A1+A2+A3是数据的XOR奇偶校验码。这里+代表二进制的异或操作。在数据写操作时,读写控制器根据用户数据A1,A2和A3产生XOR奇偶校验码Ap。Ap被写入单独的存储设备中。A1、A2、A3和Ap组成了一RAID stripe,即RAID组。在数据读取操作时,例如Device2的A2数据读取有错误,或Device2失效,控制器可以通过读取A1、A3和Ap进行异或XOR操作而恢复A2。同理,数据B1、B2、B3的奇偶校验码Bp被写在Device-1上。B1、B2、B3和Bp组成另一RAID stripe。读取时,任何不多于一个device失效都可以通过读取同一RAID stripe中的其它设备而进行数据恢复。
传统的RAID机制有如下局限性,或者说基于如下假设条件成立:
1、设备的本地可重写性:如用户需要更新数据A1,读写控制器直接重写Device-1中的A1。同时Ap也会被更新。而且,用户的逻辑块LBA(logic block address)相对物理地址PBA(physical block address,如A1)是固定的一对一的映射,从而达到管理简化的目的。
2、设备完整性:传统的RAID机制假定阵列中的所有设备都是可用的;一旦在设备失效以后,失效的设备将会被新的有效设备替换掉;数据通过RAID而可以重建。
在NVM的应用中,以上两个假设都有可能不成立:
1、设备不可本地重写:如在闪存芯片组成的冗余阵列中,一个物理页面(page)必须在所在的块(block)擦除之后才能重新写入新的数据。如果使用传统的一对一LBA至PBA的映射,系统的性能将会大幅度下降。
2、设备的不完整性:如在闪存芯片冗余阵列中,一个设备【对应于一个LUN(logic unit number)或者一个die】有可能整个失效而不能被替换。一个物理页面PBA可能失效不可再用的情况也有发生。
因此,传统的RAID实现机制在NVM组成的冗余阵列中不可直接运用。
为保证基于NVM的数据存储装置如SSD中数据的安全性,本发明揭示了动态的RAID技术以解决以上问题。
发明内容
本发明所要解决的技术问题是:提供一种基于非易失性存储器的动态独立冗余阵列存储系统,可大幅提高系统的性能,并保证基于NVM的数据存储装置中数据的安全性。
此外,本发明还提供上述动态独立冗余阵列存储系统的存储方法,可大幅提高系统的性能,并保证基于NVM的数据存储装置中数据的安全性。
为解决上述技术问题,本发明采用如下技术方案:
一种基于非易失性存储器的动态独立冗余阵列存储系统,所述系统包括:读写控制器、若干与所述读写控制器连接的存储设备,各存储设备包括一个或多个物理块,各物理块包括一个或多个页面;
所述读写控制器包括:
RAID写入控制模块,用以控制存储设备中数据的写入;所述RAID写入控制模块包括写前处理单元、写操作处理单元;所述写前处理单元用以在写入一个独立冗余阵列RAID组之前,根据存储设备的可用性形成对应的RAID组;所述写操作处理单元用以在更新数据时将正在被更新的逻辑块LBA放入有当前RAID组的页面,使得该RAID组的成员的逻辑地址由正在被更新的逻辑块LBA组成;当足够的逻辑块LBA组成一完整的RAID组时,计算并写入该RAID组的奇偶校验码,完成对该RAID组的写操作;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海宝存信息科技有限公司,未经上海宝存信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210256754.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种血栓弹力图仪
- 下一篇:室内冻土水分迁移规律模拟系统及特征参数测定方法