THE SQL Server Blog Spot on the Web

Welcome to SQLblog.com - The SQL Server blog spot on the web Sign in | |
in Search

Kevin Kline

RAID6 on SQL Server?!?

A while back I ran into a customer who was using RAID 6.  Say what?!?  They hadn’t yet encountered poor IO performance.  But they’d only just RTM’ed their application and would soon encounter performance bottlenecks once they tried to scale.

 

The typical recommendation is to stick with RAID 5 when money is tight or to use RAID 1 and/or RAID 10 if you have more money for the IO subsystem.  But why not RAID 6?

 

I like how Steve Kass, a SQL Server MVP I hold in very high regard puts it:

 

RAID 6 setup with N drives dedicates N-2 of the drives to data and

2 drives to parity. The minimum number of drives for a RAID 6 array is

4, and with 4 drives, 50% of the space is available for data. With

more drives, a higher percentage of space is available for data (with

8 drives, 75% is data and 25% is parity).”

 

Another source sheds some more light on RAID 6:

 

"RAID-6. Is actually Dual Parity and takes the parity region from RAID-5 and duplicates it so each disk has two parity regions that are calculated separately. As a consequence a RAID-6 array can recover from the loss of two drives, but performance is impacted and an extra drive is required which increases the cost of implementation."

 

Wow – that’s a lot of unnecessarily consumed space without much, if any, improvement in IO speed. 

 

Read more details at http://www.3ware.com/intranet/pdf/RAID_6_TechBrief.pdf and http://www.acnc.com/04_01_06.html.

 

Cheers,

 

-Kev

Published Saturday, October 13, 2007 10:35 PM by KKline

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

 

aspiringgeek said:

Kevin, I wholeheartedly agree with you & want to emphasize one point, i.e., the choice between money & performance.  Except for read-only volumes, RAID 5 (or RAID 6!) hasn't been recommended for almost a decade for SQL Server data from which high performance is expected.  My position is that if the hardware comes down to a choice between money & performance, the customer must be keenly aware of the trade-off.  Though I reserve the write to exercise my weasel clause for some exceptions, for read/write databases from which high performance is expected, neither RAID 5 nor RAID 6 is a good option.  

When the cost of poor performance is seriously considered, is the up-front discount offered by RAID 5 or RAID 6 worth it?

The mantra I preach to my customers is, "Size for performance, NOT capacity".  For production systems, that usually means RAID 10.

I always accompany that mantra with education regarding among other things not only RAID levels, but also disk size & speed, number of spindles, allocation unit size, & partition alignment.

October 13, 2007 10:58 PM
 

James Luetkehoelter said:

OK, here's a little different take: I often preach the mantra "protect thy data". Not everyone is concerned with getting everyone ounce of performance out of a system. Microsoft's "Always On" marketing slogan isn't always what others are looking for. There are three main juggling points with any database implementation:

1) Performance

2) Availability (I'd include scalabilty here as well)

3) Data protection

I always ask my clients and students - what's worse, 30 minutes of downtime or 30 minutes of lost data. If you think about it, in many cases the lost data is worse (imagine Amazon losing 30 minutes of transactions).

That being said, I'm not sure I disagree with you, or I believe the above - just another aspect to consider. Not everyone sees performance as business issue #1.

October 14, 2007 12:16 AM
 

KKline said:

Hey guys, great input.  Thanks,  -Kev

October 22, 2007 2:38 PM
 

StephenACarpenter said:

I actually do disagree with the assessment of RAID6 and its value as a solution for mission critical applications, especially for the small to medium business segment. Mr. Luetkehoelter mentioned above three main concerns for designing an implementation. Of these RAID 6 actually handles availability and data protection exceptionally well.

The key point is during an online rebuild after a drive failure. As both arrays and individual drives increase in size it's taking longer to come back to full fault tolerance. As a RAID 6 degrades to a RAID 5 after one drive failure and during the rebuild, a system remains protected from both data loss and downtime that would result from losing an additional drive. Using RAID 10, while providing a higher performing solution, still leaves the possibility that there will be downtime with two drive failures. These probabilities go down as the R-10 array increases in spindle count, but in a 4, 6, or even 8 drive setup, the difference between the two solutions is non-trivial. And if we're talking about stuffing all this into a 3u or smaller server - in my experience a more pressing issue than cost when evaluating space efficiency - then there are real advantages to the dual parity option (another one is being able to host an odd number of drives).

Of course not every application is going to be ideal for RAID 6. The overhead of a dual parity calculation and the extra write op will add up in a very high transaction environment. This is going to be the case in any solution that provides true protection against multiple drive failure. And more exotic hybrid solutions like RAID 15 or 51 are far more costly in space and money.

So if you are in an IT department - or consulting for one - with business requirements that lean more towards CRM, call center, eCommerce, sales or accounting systems being up reliably, and less towards extreme performance, then I'd say RAID 6 is a good recommendation. With the widespread adoption of SATA arrays, because they can offer such huge capacity for such a low price, but which pretty quickly get too big to rebuild in a hurry (not to mention an assumed lower MTBF rating), I'd say it fits a lot of organizations well. Nobody likes being on either side of any conversation that includes the words "our systems are currently down".  Restoring from a backup, no matter how hot it is, is very likely to cost something in terms of both availability and data loss.

My assessment is that RAID 6 is not often likely to be the principal cause for what could be called perceivably "poor" performance, especially in a well designed system, and for the SMB space. The parity calculations are becoming more efficient and can be handled nicely in hardware or increasingly well in software, at least in Linux 2.6. When compared to a RAID 5 solution, which is still being deployed all over the place despite its limitations (A lot of companies haven't gotten that particular memo yet), it's a big gain in reliability for a modest performance cost in the cases I've seen.

November 20, 2007 10:45 AM
 

Morey said:

Naturally, you should think about the knowledge and also troubles

data through prepared NTFS dependent hard drive partitioning.

hard drive data recovery Stellar Phoenix az Glass

windows Data Recovery inexpensive is actually money in essentially, they're able to restore much more data. What 's more, this

is not just computers, servers, or to who keep a data could mean loss in revenue as well.

November 12, 2012 5:43 PM

Leave a Comment

(required) 
(required) 
Submit

About KKline

Kevin Kline is a well-known database industry expert, author, and speaker. Kevin is a long-time Microsoft MVP and was one of the founders of PASS, www.sqlpass.org.

This Blog

Syndication

Powered by Community Server (Commercial Edition), by Telligent Systems
  Privacy Statement