[发明专利]用于数据存储系统中的错误检测和纠正的方法和装置有效
申请号: | 201480015090.X | 申请日: | 2014-03-13 |
公开(公告)号: | CN105122213B | 公开(公告)日: | 2018-01-16 |
发明(设计)人: | 詹姆斯·坎德拉里亚 | 申请(专利权)人: | 思科技术公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07;G06F11/10;G06F3/06 |
代理公司: | 北京东方亿思知识产权代理有限责任公司11258 | 代理人: | 李晓冬 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 数据 存储系统 中的 错误 检测 纠正 方法 装置 | ||
1.一种处理所存储的数据的方法,所述方法包括:
从存储设备读取与纠错位一起存储的数据;
对从所述存储设备读取的数据的与纠错位部分分开的数据部分执行散列操作以生成第一散列值;
将所述第一散列值与对应于所述数据部分的先前生成的散列值进行对比,其中先前生成的散列值与所述纠错位不同;
当所述第一散列值不匹配所述先前生成的散列值时,确定发生了读错误;以及
当确定发生了读错误时,执行错误恢复操作以确定所述读错误的源,所述错误恢复操作包括:
(a)确定当前的独立盘冗余阵列RAID存储元件;
(b)从所述当前RAID存储元件以外的其他RAID存储元件恢复信息;
(c)从所恢复的信息生成第二散列值;
(d)将所生成的第二散列值与对应于所述数据部分的先前生成的散列值进行对比;
(e)当在所生成的第二散列值与所述先前生成的散列值之间不存在匹配时,确定存在错误;
(f)当在所生成的第二散列值与所述先前生成的散列值之间存在匹配时,确定未发生错误;
(g)当特定RAID存储元件已经根据所生成的第二散列值被排除并且所生成的第二散列值与所述先前生成的散列值之间存在匹配时,将该特定RAID存储元件标识为所述读错误的源;
(h)从所述当前RAID存储元件进行到下一RAID存储元件,并重复上述(a)、(b)、(c)、(d)、(e)、(f)、(g)直到所述读错误的源被识别出为止。
2.如权利要求1所述方法,其中所述先前生成的散列值是响应于写请求而生成的,该方法还包括:
从散列值的存储表中恢复所述先前生成的散列值,所述先前生成的散列值对应于被写入所述存储设备的数据块。
3.如权利要求2所述方法,其中所述数据的数据部分是逻辑数据块,并且其中所述先前生成的散列值是根据所述逻辑数据块使用与用于生成所述第一散列值的散列函数相同的散列函数生成的。
4.如权利要求1所述方法,其中所述错误恢复操作还包括:
向基于奇偶校验的RAID存储控制器发送信号,以执行N-1个RAID存储元件的读取,从而从所述当前RAID存储元件以外的所述其他RAID存储元件恢复所述信息,其中N是所述存储设备的条带中的RAID存储元件的数目,并且其中在单独的条带中,N个RAID存储元件中的至少M个存储奇偶校验位,并且其余N-M个RAID存储元件存储对应于所述条带的所述数据的数据部分,M和N是整数值,M至少是1,N至少是3。
5.如权利要求4所述方法,还包括:
向RAID存储控制器通知错误的RAID存储元件。
6.如权利要求4所述方法,还包括:
向所标识的错误RAID存储元件通知该存储元件在用于存储所述数据的一个或多个扇区中具有错误;以及
向所述RAID存储控制器通知重建所述条带,该条带的一部分被存储在所述错误的扇区中。
7.如权利要求4所述方法,还包括:
向所标识的错误RAID存储元件通知该存储元件在用于存储所述数据的一个或多个擦除块中具有错误;以及
向所述RAID存储控制器通知重建所述条带,该条带的一部分被存储在所述错误的擦除块中。
8.如权利要求3所述方法,其中生成所述先前生成的散列值是数据去重复操作的一部分。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于思科技术公司,未经思科技术公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201480015090.X/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置