关于校验盘的疑惑,请大家指点下

您所在的位置:网站首页 raid1重建2t需要多久 关于校验盘的疑惑,请大家指点下

关于校验盘的疑惑,请大家指点下

#关于校验盘的疑惑,请大家指点下| 来源: 网络整理| 查看: 265

基本上就是用邏輯計算的方式實現硬盤冗餘, @Wizard_說的是對的,就是利用奇偶校驗將校驗數據計算出來並儲存在校驗盤上,所以說如果是不同容量大小的硬盤假設是1T+500G陣列(可用容量1T)與2T的校驗盤,對於奇偶運算來說,假設1T第一個Bit是1,500G第一個Bit是0,則有奇數個1,則對2T校驗盤第一個Bit寫入1(奇數)。

 

到500G硬盤上空間用完後(共存入1T數據,採High-Water策略),可想像500G數據盤以外有個假想的500G,但實際是無法儲存數據的,而這假想的500G都是填0的比特位元,如此一來還是可以依據1T數據盤上的資料進行奇偶運算,並儲存在校驗盤上。

 

顧名思義,在儲存1T+1bit的時候(High-water策略),若這1bit是1,那校驗值為1 (奇數,500G數據盤已用完,假想500G都是填0,[1,0]=[1T,500G]數據組中只有奇數個1);同理,如果這1bit是0,那校驗值為0 (偶數,[1T,500G]=[0,0]數據組中有偶數個1,0是偶數)

 

如此一來就可以在保證校驗盤比其他任一數據盤大的情況下保障數據安全,上面的舉例只是一個算法的例子,實際上Unraid的校驗應該比所提及的算法更為複雜,這裡只是說明一個極為簡單的例子,也有許多其他算法,比如利用加法得到奇偶校驗1+0+1+1等於3為奇數,校驗數據填1;1+0+0+1等於2為偶數,校驗數據填0,當四塊硬盤任一壞掉時就可以反推得到損壞硬盤的數據。

 

在加法算法中也可以做舉例:1+0+1+1四塊硬盤(校驗數據為1)壞掉第三塊硬盤,數組變成1+0+X+1,但因為校驗數據是1,為奇數,所以可以知道X必為1。當新硬盤被放回陣列後就可以將計算獲得的數據回填。

 

但在數據回填時該怎麼定義甚麼時候該有假想盤(如第一個例子中假想的500G,定義上全填0)存在呢?這時候Unraid中的Array Configuration就變得極為重要,若是Array Configuration在需要數據重建時被意外/人為的損壞/清除,那數據就只會回復完好的硬盤,損壞的硬盤資料將會救不回來,但往好處想,你還有好硬盤上的資料,因為Unraid是以檔案為單位寫入,非以比特為單位。

Edited November 8, 2022 by Yu-Ting Lin


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3