HP Smart Array Controllers and basic RAID performance factors

11
Figure 7. Scaling of 256 KiB Sequential Read Performance, drive limited until reaching the 8 x 6 GiB SAS bandwidth limit
Configuration: Smart Array P421 controller, 2 GiB cache; 15K SAS drives; maximum measured for queue 1 to 256
Note: RAID 5 measurements with more than 14 drives are for illustrative purposes only. HP does not recommend RAID 5 arrays larger
than 14 drives (depending on tolerance for data loss and type of drive, 14 drives may be too many).
RAID Write performance
With the exception of RAID 0, all RAID levels provide some level of data redundancy and recovery. In the event of a drive
failure, this redundancy is necessary for rebuilding the logical drive and recovering data. A tradeoff for redundancy is the
potential performance impact of the overhead involved. The Smart Array controller must execute additional low-level
commands to establish redundancy. This increases the number low-level reads, writes, and calculations. The Smart
Array controller must execute all of these low-level commands before performing a high-level “write” to a logical drive
using RAID (with the exception of RAID 0).
Write performance for RAID 0
RAID 0 is the only RAID level that does not support any data redundancy. As a result, no extra low-level commands are
required to execute a “write” to a logical drive. Because striping distributes data across the physical drives, the Smart
Array controller can execute the low-level writes in parallel. For RAID 0, both sequential and random write performance
should scale as the number of physical drives increases. RAID 0 provides a useful basis for comparison when evaluating
higher RAID level performance.
Write operations for RAID 1 and RAID 1+0
RAID 1 is the simplest example of the additional write overhead associated with redundant RAID levels. RAID 1 mirrors
data across a set of two drives. This means that for every “write” of a block of data to a logical drive, the Smart Array
controller must execute two low-level writes, one to each of the mirrored drives. In a simple non-cached example, this
would mean that in the worst-case scenario, write performance could be one-half that of writing to a non-arrayed
physical drive. With RAID 1 there is no striping. This reduces the array controller’s ability to execute writes in parallel
across multiple physical drives, which results in lower performance than RAID 0; similar to the performance of a single
drive.
RAID 1+0 mirrors data; however, it also striped the data across the mirrored drive sets. This distributes the data evenly
across the drives and provides better write performance. RAID 1+0 requires executing two low-level writes for each
high-level write to the logical drive.
0
500
1,000
1,500
2,000
2,500
3,000
3,500
4,000
4,500
4 Drives
8 Drives
12 Drives
16 Drives
20 Drives
24 Drives
RAID 0
RAID 10
RAID 5
RAID 6
MiB/s