新聞中心
聯系我們
Contact us
Contact us
- 總部電話010-51727811
- 客服熱線400 779 6696
- 更多聯系信息
獨立訪問分塊數據RAID的校驗(一)
時間:2012-09-06 09:30 來源:飛客數據恢復 作者:飛客數據恢復工程師
獨立訪問RAID的情形稍為復雜一些,數據并不分塊寫入幾個轉動速度相同的同步磁盤,而是寫到單個分區中的分塊,然后再寫入下一個磁盤的相應分區。換而言之,寫不必跨越陣列中的所有磁盤。
1.獨立訪問陣列的寫額外開銷
當對每一個分塊施行寫時,同時也計算校驗數據,以使這些數據獲得保護。像前面描述的,XOR可用于建立校驗數據,但用來計算校驗數據的一些數據已經存放在磁盤上,主機I/O控制器不能對這些數據執行寫操作,因此,在計算新數據的校驗值時,需要從陣列磁盤中讀出存在的數據。為了寫新的數據并計算其校驗值,需要執行數據讀和計算的操作,這個過程稱為RAID寫額外開銷。
為新數據建立校驗是一個有趣的過程,而不是所希望的及時過程。記住,校驗數據計算與計算順序無關,所以,參加計算的位能以任何順序相混合,而所得到校驗數據的結果是相同的。已經證明,XOR函數具有逆著原來的步驟計算臨時值的能力。例如,對校驗數據及任何一個貢獻值進行XOR操作時,都使該值的貢獻去除,4個磁盤的XOR計算結果。
1.獨立訪問陣列的寫額外開銷
當對每一個分塊施行寫時,同時也計算校驗數據,以使這些數據獲得保護。像前面描述的,XOR可用于建立校驗數據,但用來計算校驗數據的一些數據已經存放在磁盤上,主機I/O控制器不能對這些數據執行寫操作,因此,在計算新數據的校驗值時,需要從陣列磁盤中讀出存在的數據。為了寫新的數據并計算其校驗值,需要執行數據讀和計算的操作,這個過程稱為RAID寫額外開銷。
為新數據建立校驗是一個有趣的過程,而不是所希望的及時過程。記住,校驗數據計算與計算順序無關,所以,參加計算的位能以任何順序相混合,而所得到校驗數據的結果是相同的。已經證明,XOR函數具有逆著原來的步驟計算臨時值的能力。例如,對校驗數據及任何一個貢獻值進行XOR操作時,都使該值的貢獻去除,4個磁盤的XOR計算結果。
所以,當新的數據被寫入一個獨立訪問陣列時,將使用下列過程更新校驗數據和寫入新數據:
1)從主機I/O控制器接收I/O請求和新數據。
2)讀出將被替代分塊的原有數據。
3)讀出該塊的校驗數據。
4)對校驗數據與原有數據實施XOR操作,去除原有數據對校驗數據的貢獻。
5)對該校驗數據與新數據實施XOR操作,得到新的校驗數據。
6)將新的校驗數據寫入磁盤。
7)將新數據寫入磁盤。
這個過程稱為讀、修改和寫周期,一個帶有4個成員磁盤陣列的讀、修改和寫的周期,其中一個磁盤包含分條的校驗數據。