Does the world need Triple Parity RAID?

Chris Mellor from the Register noticed a post on Sun’s blog about Triple Parity RAID (RAID-TP) being added to ZFS. This is a rather logical extension of the current RAID-5 (single parity) and RAID-6 (dual parity, also known as RAID-DP) schemes, and the Sun engineer that wrote the blog post says the performance should be nearly identical to RAID-DP as far as the necessary parity calculations are involved.

The real question is whether anyone needs this; this article at Wikibon gives lots of details about how likely a failure of multiple drives in a RAID-array is. The main conclusion is that it’s much more likely than you might think, especially when using SATA drives. Bit Error Rates for common SATA-drives are mostly between one error every 10 to 100 TB; as drive sizes increase, this figure becomes more significant. Imagine having a 16-drive array of 2 TB disks; suddenly, one error every 100 TB is no longer a very large number, but starts becoming a likely event that you’ll have to plan for. Combined with the risk of human error (remove the wrong drive when replacing a failed disk in a RAID-5 array and you’ve just wiped all your data), RAID-5 is just not a viable option for any serious storage system any more.

raid6

We’re not quite at the point where triple parity is becoming a necessity; but we’re getting there sooner rather than later, and having this option might become an important selling point for Sun Oracle. But then again, as the prices per gigabyte keep on dropping, it might also be worth considering a move to RAID-10; you’re wasting a bit more space, but drives are cheap, and RAID-10 is both faster in normal operation and in degraded mode. Combined with patrol reads that help notice errors as soon as possible, this might gain in popularity. I’m guessing both RAID-10 and RAID-TP will be more popular than RAID-5 and 6 in just a couple of years; it’s too early to predict a clear winner just yet.

2 comments to Does the world need Triple Parity RAID?

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>