1. 程式人生 > >stay hungry,stay foolish !

stay hungry,stay foolish !

導讀:raid 5既能夠實現速度上的加倍,同時也能夠保證資料的安全性,所以在很多高端系統當中都使用這種raid模式。
 raid 5是一種非常具有實用價值的raid模式,廣泛應用於各種環境中。raid 5模式工作原理:



 raid 5使用至少三塊硬碟來實現陣列,它既能實現raid 0的加速功能也能夠實現raid 1的備份資料功能,在陣列當中有三塊硬碟的時候,它將會把所需要儲存的資料按照使用者定義的分割大小分割成檔案碎片儲存到兩塊硬碟當中,此時,陣列當中的第三塊硬碟不接收檔案碎片,它接收到的是用來校驗儲存在另外兩塊硬碟當中資料的一部分資料,這部分校驗資料是通過一定的演算法產生的,可以通過這部分資料來恢復儲存在另外兩個硬碟上的資料。另外,這三塊硬碟的任務並不是一成不變的,也就是說在這次儲存當中可能是1號硬碟和2好硬碟用來儲存分割後的檔案碎片,那麼在下次儲存的時候可能就是2號硬碟和3號硬碟來完成這個任務了。可以說,在每次儲存操作當中,每塊硬碟的任務是隨機分配的,不過,肯定是兩塊硬碟用來儲存分割後的檔案碎片另一塊硬碟用來儲存校驗資訊。


 這個校驗資訊一般是通過raid控制器運算得出的,通常這些資訊是需要一個raid控制器上有一個單獨的晶片來運算並決定將此資訊傳送到哪塊硬碟儲存。

 raid 5同時會實現raid 0的高速儲存讀取並且也會實現raid 1的資料恢復功能,也就是說在上面所說的情況下,raid 5能夠利用三塊硬碟同時實現raid 0的速度加倍功能也會實現raid 1的資料備份功能,並且當raid 5當中的一塊硬碟損壞之後,加入一塊新的硬碟同樣可以實現資料的還原。

 下面來分析一下raid 5如何實現對資料的還原,舉個例子來說,使用3塊硬碟來構成一個raid 5陣列,使用者定義的分割檔案大小為64k,此時需要儲存的檔案大小為128k。首先,當raid控制器接收到這部分資料之後利用一定的演算法得出校驗資訊,然後將這128k的檔案分割成兩個大小為64k大小的檔案碎片,然後將這兩個檔案碎片同時分別放往1號硬碟和2號硬碟,最後校驗資訊被髮往3號硬碟。如果這個陣列當中某個硬碟損壞了,還是可以恢復原來的資料:如果上面用來儲存校驗資訊的3號硬碟損壞了,可以通過1號和2號硬碟來重新生成校驗資訊;如果損壞的是1號或者2號硬碟,可以利用3號硬碟上儲存的校驗資訊重新生成原來的檔案碎片。


 raid 5模式並不是一些都好,如果陣列當中某塊硬碟上的資訊發生了改變的話,那麼就需要重新計算檔案分割碎片,並且,校驗資訊也需要重新計算,這時,三個硬碟都需要重新呼叫。

 同樣,如果要做raid 5陣列的話,最好使用相同容量相同速度的硬碟,raid 5模式的有效容量是陣列中容量最小的硬碟容量乘上陣列中硬碟數目減去一後的數,這裡硬碟數目要減去一是因為其中有一塊硬碟用來存放校驗資訊。

 raid 5既能夠實現速度上的加倍,同時也能夠保證資料的安全性,所以在很多高端系統當中都使用這種raid模式。
轉自中國儲存網,原文連結:http://www.chinastor.com/a/jishu/raid/0GR0H010.html