When it comes to large, enterprise-class storage arrays, RAID 10 is often the RAID level of choice. However, for smaller arrays, such as those used in branch offices, RAID 10 might not be practical. After all, RAID 10 arrays lose half of their total capacity (and half of their total IOPS) to overhead. As such, smaller arrays are often configured to use either RAID 5 or RAID 6. This raises an interesting question: Is it better to provision a disk to use RAID 5, and configure one of the disks to act as a hot spare? Or is it better to use RAID 6 instead?
At first, this question would seem to be a toss-up. Both RAID levels have exactly the same amount of overhead, and both provide protection against disk failure. Even so, RAID 5 and RAID 6 are not created equally, and neither is the perfect choice in every situation. Here is how the two RAID levels stack up against one another.
The Basic Architecture
A RAID 5 array is designed to protect against the failure of a single disk within the array. The array writes enough parity data to each disk in the array to allow the array to continue to function in the event of a disk failure. Because of the way that RAID 5 works, the total capacity of one disk is lost to overhead. If, for example, a RAID 5 array contained five 10TB disks, then the array’s usable capacity would be 40TB. When the array is configured to treat one of the disks as a hot spare, then one of the disks is reserved as a replacement in the event that a disk fails. This would decrease the example array’s usable capacity to 30TB.
In contrast, a RAID 6 array is designed to protect against two simultaneous disk failures. However, the price for this extra protection is that two disks' worth of capacity is lost to overhead. As such, a RAID 6 array made up of five 10TB disks would have a usable capacity of 30TB because 20 TB is lost to overhead.
Performance During Nominal Situations
RAID 5 and RAID 6 both provide protection against a disk failure by writing parity information to all of the disks in the array. This means that some of the available write IOPS are lost to the overhead associated with writing parity data.
The number of IOPS that are lost to writing parity data varies depending on the number of disks in the array. Let’s suppose for a moment that a five-disk array was configured to use RAID 5 protection, and that one disk was reserved for use as a hot spare. Let’s also pretend that each disk was capable of producing 120 IOPS. Because one disk is reserved, the RAID 5 array actually spans four disks, not five. These four disks can collectively deliver 480 IOPS, but 25% of that is being lost to overhead, thereby reducing the array’s useful IOPS to 360.
Now, let’s pretend that the same five-disk array is configured to use RAID 6, and that no hot spare has been reserved. The array spans all five disks, putting the total potential IOPS at 600. However, the IOPS associated with two disks are lost to parity, thereby bringing the total available write IOPS to 360. Although this matches the RAID 5 array’s write performance, it is important to note that this is only the case because the RAID 5 array was outfitted with a hot spare. If all of the RAID 5 array’s disks had been used (without a hot spare being reserved), its potential write IOPS would be 480.
So what about protection? The RAID 6 array can sustain two simultaneous disk failures. The RAID 5 array can sustain one disk failure, but, in this example, the RAID 5 array has a hot spare available. Even so, the two RAID arrays offer very different levels of protection.
When a disk fails in the RAID 5 array, the hot spare is immediately activated. At that point, however, the hot spare is empty. The parity information stored on the other disks is used to populate the hot spare and rebuild the array. During this rebuild period, the array is vulnerable to a second disk failure.
In contrast, if a disk were to fail in the RAID 6 array, that disk would have to be manually replaced since there is no hot spare. (At least, not in this example--most storage vendors will allow you to provide a hot spare for use within a RAID 6 array.) When you replace the failed disk, the rebuild process begins. This process is similar to that of the RAID 5 array. If another disk were to fail during the rebuild process, however, the RAID 6 array would continue to function. The same cannot be said about the RAID 5 array.
If an organization is forced to choose between a RAID 6 array and a comparable RAID 5 array with a hot spare, then the RAID 6 array is clearly the better choice, assuming that everything else is equal.