RAID 5 - Striped Set With Distributed Parity - stripes both, data and parity information, across three or more drives. It's one of the most popular RAID levels. Minimum of three hard drives are required to set up RAID 5 array. Overall storage efficiency can be expressed with equation: S
RAID5 = (n-1) × S
min, where S
min is a size of the smallest drive and n is for number of drives. It is possible to adjust the performance of RAID 5 array, by trying different stripe sizes, until one is matching. Theoretically, there are no limits for n - number of drives used. However, by setting up many hard drives in RAID 5, the possibility of failure of two or more drives simultaneously, is enhanced. What is more, for reasons of higher rebuilding times and for higher incidence of failed sector during rebuild, the MTBF of array can be lower than the MTBF of one hard drive.
RAID 5 array can tolerate loss of one drive, of course overall performance will be lower. There will be no difference in performance noticed on application level, as missing blocks of data are continuously, "on the fly", distributed from data blocks and parity blocks of functional drives. RAID 5 controller will inform the system about the drive failure, and administrator will be requested to replace the failed drive. After replacement of the lost drive, array needs to be rebuilt; missing blocks on replaced unit will be completed by distribution of data from data blocks and parity blocks. There is a higher risk of loosing of data, during the time of replacement of the failed drive and rebuilding of the array - Interim Data Recovery Mode. In the case of the simultaneous failure of two and more drives, all data are lost.
Read performance is almost the same as for RAID 0, there can be a little difference due to the necessity to skip parity blocks distributed among data blocks. Due to parity overhead, write performance is only fair. It is a rather complicated process, firstly old data are read from a stripe (stripe = sequence of related blocks on different drives, across the array), than new parity is computed and written down and at the end, new data are written down on the stripe. There is a high data flow among drives and controller. In case that common RAID 5 implementation has to write big body of data, of smaller size than capacity of one stripe is, the RAID 5 performance gets worse. To overcome this problem, more complex RAID 5 implementations can use a non-volatile memory - write back cache (WB-C). Important feature is using of specialized RAID 5 controller with hardware supporting of parity calculations, otherwise the processor will be overloaded (software RAID). If system falls down right during the process of writing, parity consistency with data will be affected; this is called the write hole. Important is to detect and set up this break down before disk or block failure, otherwise even after replacement of the failed drive, rebuild of appropriate data block will be not coherent, data will be taken up from improper parity, what will cause loss of data written in relevant block.
- Advantages: efficient, fault-tolerant and good performance
- Disadvantage: the extra time required to calculate and store parity degrades the write performance
- Applications: good choice for file and application servers; Internet and Intranet servers
3 x ST3500320NS & RAID 5
Intel® Matrix Storage Console - RAID 5
3 x ST3500320NS in RAID 5
3 x ST3500320NS in RAID 5 & Enabled Volume Write-Back Cache
There are three ST3500320NS drives set up in RAID 5 on the first screenshot. Read performance is stabile during the test, cca. 92 MB/s. Write performance is rather poor, only 6,6 MB/s. Burst speed value 166,9 MB/s is lower comparing to one hard disk burst speed. When I turned W-BC function on, all went much better. Write performance has grown 17-fold, however read performance was only half as good as without W-BC. Burst speed enhanced up to 2010,6 MB/s.
Application tests proved, that there is no sense to use RAID 5 without Write-Back Cache function. However, as you can see in the table, RAID 1 is better choice.
Conclusion:
- Generally I can assume that new line of Seagate disks is well made. Excellent sequential performance, low operation temperatures, good performance in application tests, five years warranty, 32 MB Cache (for selected models only), you can have all this, even for rather expensive price
- IDE vs. AHCI: It's not easy to assess, in which mode drive performance is better. In IDE mode, there is a possibility to read SMART values from the drive, and AHCI has NCQ, Hot Plug, Staggered Spin-up and other functions, even I cannot clearly decide about their advantages
- 2 HDDs in RAID 0: Excellent performance in sequential operations (increase to 100%), good performance in application tests
- Write-Back Cache, Burst Speed & CPU frequency: My overall experience was, that after starting up the W-BC function, burst speed value on Intel chipset raised on the level of CPU speed. It may seem strange, but I already met with similar experience
- 3 HDDs in RAID 0: Here the results are not very clear and quite controversial. It's hard to say, if the problem was in tested disks set, or it is just common "feature" of Intel chipset
- 2 HDDs in RAID 1: This array enables storage of data on the second drive, and you cannot expect any better results regarding read performance, with the W-BC function on, situation is even worse
- 3 HDD in RAID 5: Finally I could test positive aspects of Write-Back Cache, and all at once I have to say, that it has no sense to use RAID 5 without W-BC. Despite a technical exigence of RAID 5, the ICH8R was able to cope with all the tasks. Nevertheless, according to me this setup is not trustful in case of its failure. High quality UPS is necessary for this kind of setup
PS: I would like to thank my great friend gAnitass for all the photos she made for this review.
I also thank to Kiko - for quick dealing, when I had initial "disks problem" and also for great prices he offered me.
HlaDas, thanks for HTML support!
Thanks to all of you!