00 RAID 10 的使用時機與 Intel VROC 的讀寫速度 cover 1024x512

RAID 10 的使用時機與 Intel VROC 的讀寫速度

一般來說,擁有 4 顆以上硬碟的話,最好優先考慮使用 RAID 10 ,畢竟讀寫速度是比 RAID 5 來的優異。除非是有預算限制、可用容量考量,才會考慮使用 RAID 5 。在文章中,會比較兩種 RAID 的使用時機、實際考量與 Intel VROC 建立 RAID 10 的讀寫速度。完整【 Stripe Size 】vs【 Throughput】的測試結果與軟體設定參數如下:

1). Stripe Size: 4KB, 8KB, 16KB, 32KB, 64KB, 128KB
2). Data Size: 4KB, 16KB, 64KB, 256KB, 1024KB
3). QD: 1, 2, 4, 8, 16, 32

RAID 5 vs RAID 10,哪一個適合你?

使用 Intel VROC 軟體進行測試,數據結果在後面的章節中。

01-Intel-VROC-RST-RSTe-的差異-960
Intel VROC / RST / RSTe 的差異

兩個 RAID Types 並沒有哪一個是最好的,而是要考慮哪一種 RAID 比較適合你的應用。對於 RAID 5 而言,假使其中一顆硬碟壞掉的話,需要透過重建的過程,將所有資料還原回去;然而對於 RAID 1 而言,假使有一顆硬碟壞掉的話,就只是從備用的硬碟中,將資料複製到新的硬碟上面而已。

我想大家都知道,RAID 5 的技術中,要重建完整資料的話,是需要從其他剩餘的正常硬碟中,透過檢查碼與資料的資訊,將遺失的資料計算還原回來。而這一個行為,是相當耗時的一件事,並且對於電腦而言, CPU 會處在高使用率的狀態,所以系統容易發生當機或升高其他不預期意外的風險。

但是另一點,RAID 5 相對於 RAID-10 而言,的確是存在較高的儲存容量。然而,RAID-10 就需要更多預算使用更多顆硬碟,才能達到相同的儲存容量。

所以,在決定建立 RAID 5 還是 RAID-10 之前,先問自己你的使用情境到底是比較像以下的哪一種呢?

架站需求

對於架站需求的使用者,RAID 5 決定是比較適合的!因為 RAID 5 能夠在儲存容量、讀寫效能、安全性、容錯方面…等,整體方面比較能夠取得平衡點。

極度重視讀寫效能

對於讀寫速度有特別要求的人而言,RAID-10 是首選!因為它並不需要計算檢查碼、也不會讓系統處在高負載狀態下進行資料重建,衍伸出不預期的意外風險。而且,理論上 RAID-10 的讀取速度比 RAID 5 多一倍。

快速資料重建

對於需要在短時間內,完成資料重建的話,RAID-10 是首選!因為 RAID 5 須要花長時間,計算檢查碼後,將所有資料還原回來。

重視 CP 值

對於預算受限,需要做出最經濟效益的 RAID,那麼 RAID 5 是首選!因為 RAID-10 的儲存容量,只有總硬碟容量的一半而已(假設所有硬碟的容量都相同);相對於 RAID 5 的話,儲存容量會是總硬碟容量的 2 / 3 或 3 / 4 …,取決於使用的硬碟顆數。

資料庫應用

對於有資料庫應用的人而言,RAID-10 是首選!因為它具備較好的讀寫效能與資料安全性,容錯能力高於RAID 5。

RAID 10 的測試數據

看完以上的實例說明後,相信大家對於如何決定建立 RAID 5 或 RAID 10,應該都比較清楚有哪些方面需要考慮了。接下來,就讓我們來看完整的測試數據,結果會依序分成 4 個部分:

  1. Sequential Read
  2. Sequential Write
  3. Random Read
  4. Random Write

每一張圖表當中,黑色虛線是原本單一顆 HDD 的讀寫結果,而圖中有顏色的實線就是不同 Stripe Size 所產生的讀取速度。其中:

  • X 軸: QD( Queue Depth )
  • Y 軸: 速度,單位是 MB/s

RAID-10 HDD Sequential Read

01 Intel VROC HDD 效能, Sequential Read, RAID 10, Data Size=4K
圖1、Intel VROC HDD 效能, Sequential Read, Data Size=4K
02 Intel VROC HDD 效能, Sequential Read, RAID 10, Data Size=16K
圖2、Intel VROC HDD 效能, Sequential Read, Data Size=16K
03 Intel VROC HDD 效能, Sequential Read, RAID 10, Data Size=64K
圖3、Intel VROC HDD 效能, Sequential Read, Data Size=64K
04 Intel VROC HDD 效能, Sequential Read, RAID 10, Data Size=256K
圖4、Intel VROC HDD 效能, Sequential Read, Data Size=256K
05 Intel VROC HDD 效能, Sequential Read, RAID 10, Data Size=1024K
圖5、Intel VROC HDD 效能, Sequential Read, Data Size=1024K

RAID-10 HDD Sequential Write

06 Intel VROC HDD 效能, Sequential Write, RAID 10, Data Size=4K
圖6、Intel VROC HDD 效能, Sequential Write, Data Size=4K
07 Intel VROC HDD 效能, Sequential Write, RAID 10, Data Size=16K
圖7、Intel VROC HDD 效能, Sequential Write, Data Size=16K
08 Intel VROC HDD 效能, Sequential Write, RAID 10, Data Size=64K
圖8、Intel VROC HDD 效能, Sequential Write, Data Size=64K
09 Intel VROC HDD 效能, Sequential Write, RAID 10, Data Size=256K
圖9、Intel VROC HDD 效能, Sequential Write, Data Size=256K
10 Intel VROC HDD 效能, Sequential Write, RAID 10, Data Size=1024K
圖10、Intel VROC HDD 效能, Sequential Write, Data Size=1024K

RAID-10 HDD Random Read

11 Intel VROC HDD 效能, Random Read, Data Size=4K
圖11、Intel VROC HDD 效能, Random Read, Data Size=4K
12 Intel VROC HDD 效能, Random Read, Data Size=16K
圖12、Intel VROC HDD 效能, Random Read, Data Size=16K
13 Intel VROC HDD 效能, Random Read, Data Size=64K
圖13、Intel VROC HDD 效能, Random Read, Data Size=64K
14 Intel VROC HDD 效能, Random Read, Data Size=256K
圖14、Intel VROC HDD 效能, Random Read, Data Size=256K
15 Intel VROC HDD 效能, Random Read, Data Size=1024K
圖15、Intel VROC HDD 效能, Random Read, Data Size=1024K

RAID-10 HDD Random Write

16 Intel VROC HDD 效能, Random Write, Data Size=4K
圖16、Intel VROC HDD 效能, Random Write, Data Size=4K
17 Intel VROC HDD 效能, Random Write, Data Size=16K
圖17、Intel VROC HDD 效能, Random Write, Data Size=16K
18 Intel VROC HDD 效能, Random Write, Data Size=64K
圖18、Intel VROC HDD 效能, Random Write, Data Size=64K
19 Intel VROC HDD 效能, Random Write, Data Size=256K
圖19、Intel VROC HDD 效能, Random Write, Data Size=256K
20 Intel VROC HDD 效能, Random Write, Data Size=1024K
圖20、Intel VROC HDD 效能, Random Write, Data Size=1024K

Intel VROC HDD RAID 10 結論

看完以上測試結果後,假使比較注重 Sequential Read/Write 的話, Stripe Size 應該要設定 64KB ,才是最適當的選擇。

假使比較注重 Random Read/Write 的話, Stripe Size 應該要設定 128KB ,才是最適當的選擇。不過,憑良心講, Random Read/Write 的數據,以速度的絕對值來看的話,幾乎都不會差距太多。

所以,我還是傾向將 Stripe Size 設定為 64KB。



延伸閱讀