原创 raid6 theory summary3

2008-5-9 17:18 4021 6 6 分类: 软件与OS


9、分类讨论数据恢复过程



RAID6可以恢复两个磁盘同时失效时的硬盘数据。针对不同的磁盘失效情况,RAID6采取的数据恢复算法有所不同,因此,需要分类讨论数据恢复过程。可以将磁盘数据恢复过程分成如下四种情况进行讨论。



9.1 
P
盘和Q盘数据损坏



这种情况比较简单,由于原始数据部分是完好无损的,因此PQ的值可以通过前面讲述的方法进行重新计算。



9.2 
Q
盘和一个数据盘损坏



这种情况的数据恢复方式和RAID5基本一致。由于P校验码是正确的,因此丢失的数据块可以通过P校验码恢复,这个过程和RAID5是完全相同的。数据块恢复之后,Q校验码就可以根据上述方法重新计算。方法如下:



假设某一条带中的D(0,1)数据丢失。


bd7dcaab-31a1-4336-91eb-edb89f23acee.JPG



9.3 
P
盘和一个数据盘损坏



这种情况的数据恢复较上面两种都复杂。在这种情况下,首先可以采用Q校验码恢复丢失的数据块。待数据块恢复之后,再计算P校验码。整个计算过程如下(假设D(0,2)数据丢失):

f2e1f8e6-9b05-4ec8-931e-a253d054f024.JPG





9.4 
两个数据盘同时损坏



这种情况是重建过程中遇到的最复杂情况。现在假设数据盘1和数据盘2损坏,那么我们可以通过PQ校验码得到两个方程,解算这两个方程可以得到损坏的数据信息,如下:




e0773821-7613-49de-b0e8-b4d6b2bd0b3a.JPG



通过矩阵求逆等运算可以直接恢复丢失的数据。当求出一个数据之后,可以通过P校验值来恢复另外一个数据,计算方程如下所示:



D(0,1)和D(0,2)的计算方程:


a366fa3b-37d9-42be-8749-7a9aa697e15e.JPG



其中:



f1cab480-1ff0-4c0e-b2a4-bc1d2f9cc945.JPG


通过方程(1)或者(2)得到D(0,1)或者D(0,2),然后可以通过P校验码恢复另外一个数据,计算方法如下:



c4a15a8b-977b-4830-997d-bbbc3f6e757d.JPG








文章评论0条评论)

登录后参与讨论
我要评论
0
6
关闭 站长推荐上一条 /2 下一条