RAID selection can be a tough choice, especially when budgets are tight. Learn why RAID 10 might be a better choice than RAID 6 even though it's more expensive.
Last week, my friend and fellow TechRepublic contributor Rick Vanover provided some compelling reasons why you should opt for RAID 6 instead of RAID 5 for data protection, particularly as individual disk size increases and more and more disks are added to an array. As Rick indicated, RAID 6 provides much greater protection against data loss than RAID 5. In fact, a lot has been written about the growing need to avoid RAID 5 due to its inherent and growing set of limitations.
When it comes to a choice between RAID 5 and RAID 6, I agree with Rick that, from a data protection standpoint, RAID 6 is the better choice. There are, however, some significant tradeoffs, which Rick alluded to in his article. Most importantly, RAID 6 imposes a serious (as in, not insignificant) write performance penalty, even when compared to RAID 5. For every write operation initiated against a RAID 6-based array, six I/O operations are required. For RAID 5, a write operation results in just four I/O operations. In my opinion, these are significant roadblocks even in a relatively equally balanced read/write environment.
Although cost is always an important consideration when buying new storage, growing disk sizes have gone a long way toward making it possible to focus much more on the performance side of the storage equation as opposed to the capacity side. That's why, in most situations, if given the option, I'd choose RAID 10 (data striping over mirrored data sets) over either RAID 5 or RAID 6. In fact, I recently put my money where my mouth is on the answer to this question when I purchased an expansion disk shelf for our SAN.
Storage capacity didn't enter into the equation (we have plenty of space); however, we were hitting an IOPS wall. As such, the primary focus was performance - balanced read and write performance. The new disk shelf is configured as a RAID 1+0 array. Whereas RAID 6 imposes that aforementioned 6x write penalty and RAID 5 imposes a 4x penalty, RAID 1+0 imposes just a 2x penalty and has other significant benefits:
- Better write performance. RAID 1+0 imposes only a 2x write performance hit.
- Faster rebuild speed. Rebuilding a failed disk that takes part in a mirror is a much faster process than rebuilding a failed disk from a RAID 6 array. If you implement a hot spare, the rebuild process can go quite quickly, making it less likely that you'll suffer the simultaneous loss of a second disk.
- Can withstand the loss of multiple disks (in some cases). This is a bit of a shaky proposition, but is important to note. In every case, RAID 6 can withstand the loss of two disks in an array; this is one of the main value propositions for those who use RAID 6. As long as disks aren't lost on both sides of the mirror sets, RAID 1+0 can also withstand the loss of multiple disks. If the stars were aligned correctly, you could theoretically lose every disk on one side of the mirror and still be operational on the other copy of the data. Again, don't count on losing disks on one side of the mirror, but it's still important to understand.
- Performance degradation during rebuild process is minimal. When a RAID 6 disk fails, the rebuild process can have a seriously negative impact on overall storage performance due to the need to recalculate parity. With RAID 10, re-establishing a broken mirror is a relatively behind-the-scenes process.
Going back to the space cost inherent in making the choice between RAID 6 and RAID 1+0, understand that with RAID 6, you "lose" 2/number-of-disks-in-array worth of capacity to parity. With RAID 1+0, that "lost" space equals a straight 50% of total array capacity, regardless of the number of disks. So, yes, RAID 10 does have a higher space cost, but I believe that the benefits brought to the table (particularly with regard to write performance) are powerful reasons to avoid RAID 6 in favor of RAID 10.
If your storage device is using RAID 6 and you're not having performance problems -- particularly related to writes -- there's no need to blow it away and replace it with a RAID 1+0 configuration. My advice here is intended to be food for thought when it comes to deploying new storage. Don't simply write off RAID 10-based storage due to its 50% overhead cost; it might be worth the cost trade off, depending on your situation. As always, your selection will be based on your own testing, application needs and risk tolerance.
Additional resources about RAID
- RAID 10 vs. RAID 5 Performance
- An EMC white paper on RAID performance
- RAID 6 -- Do you really want it?
- Who's afraid of RAID 6?
- RAID 10, RAID 5, RAID 50, which one should I use?
- How to protect yourself from RAID-related Unrecoverable Read Errors (UREs)