Disaster Recovery optimize

A RAID primer for IT consultants

When planning a client server, this guide will help ensure the RAID version selected best fits the requirements.
Many IT consultants build and deploy new servers for clients on a very regular (sometimes weekly) basis. This requires you to make numerous decisions about chassis design, processor count and speed, disk capacity, redundant power supplies, disk speeds, memory, operating systems, and warranty replacement windows. It can be easy to overlook the specified RAID version, even though this detail constitutes a critical component of server architecture.

Here's a guide you can use when planning a client server to help ensure the RAID version selected best fits the requirements. The RAID version you deploy will depend upon each client's specific needs.

Hardware- vs. software-based

Clients almost always desire the least expensive server available, but it's your job to ensure the server deployed best meets client objectives, and software-based RAID systems provide a compromise. And, almost any time a compromise is made, there is a price to pay for building a server.

Software-based RAID typically trades lower cost for less performance. The server's resources must manage RAID overhead, and performance suffers. But a separate, dedicated RAID controller isn't required, so cost is reduced.

I don't recommend software-based RAID. The purpose of a server is to deliver reliable performance. Compromising server potential to shave marginal cost is shortsighted and pays performance penalties over the lifespan of the server, the purpose of which is to deliver performance. Further, many virtualization engines required hardware-based RAID.

Hardware-based RAID leverages a dedicated hardware controller, typically with its own onboard memory. Because the dedicated component manages transactional overhead, performance improves. Battery-supported disk write caching and tighter component integration usually result in hardware-based RAID configurations, delivering more reliable performance and improved error-handling, too.

Hardware- vs. software-based RAID TL-DNR: Hardware-based RAID is more expensive but provides better performance.

RAID 0

RAID 0 stripes data across a minimum of two disks and provides excellent performance, as data can be read or written simultaneously using two or more disks. Disk costs (i.e., the amount of disk space lost to support redundancy) are zero, as RAID 0 is a misnomer (RAID, after all, stands for Redundant Array of Inexpensive Disks); RAID 0 offers no redundancy. Thus, it should not be deployed when uptime or high availability is required. If a single drive fails, the array is destroyed and downtime and data loss result.

RAID 0 TL-DNR: Fast, cheap, and dangerous.

RAID 1

RAID 1 mirrors data usually across two disks. Depending upon the installed controller, performance may prove unaffected. Disk cost is high at 50 percent (when using two disks total), as one disk mirrors another. If a disk fails, the array continues to operate, and no downtime should result.

RAID 1 TL-DNR: Slow, expensive, and safer.

RAID 5

RAID 5 -- potentially the most commonly deployed RAID version when seeking a balance between performance and redundancy -- stripes data across three or more disks. Performance increases because read/write operations can be performed simultaneously across multiple disks. Because parity information is spread across multiple disks, too, a single disk can fail and the array should continue operating properly (albeit at reduced performance during the failure).

Disk cost proves reasonable, too. Consultants can calculate RAID 5 efficiency using the equation 1-1/n in which n equals the number of disks in the RAID array. To calculate disk costs specifically, consultants can divide 100 by the total number of disks. If there are three 500 GB disks in a RAID 5 array, divide 100 by 3 (resulting in a third) to determine the RAID 5 disk cost (or one 500GB disk in this example). Of course, the disk cost (500 GB in this example) must be subtracted from the total disk space (1.5 TB in this case) to determine the total usable preformatted disk space (1 TB in this example). Note, given my preference, I typically deploy an extra (fourth) drive within RAID 5 arrays for configuration as a hot online spare. Using a hot spare increases disk expense but helps minimize downtime, as a server configured in this manner does not need to be powered down when it’s necessary to replace a failed disk.

RAID 5, with its balance of redundancy vs. performance, is a good fit well for many server environments. Occasionally additional redundancy (or tolerance for multiple simultaneous disk failures) is required. In such cases, RAID 10 may prove best.

RAID 5 TL-DNR: Fast with reasonably efficient redundancy.

RAID 10

RAID 10 essentially blends RAIDs 1 and 0. In other words, RAID 10 combines disk mirroring (RAID 1) and striping (RAID 0).

A minimum of four disks is required when deploying RAID 10, and disks must be even in number. The benefit is high performance and improved redundancy; multiple disks can fail, and a RAID 10 array will remain intact unless a mirror set loses all of its member disks (in which case the array will fail). Compared to RAID 5, RAID 10 delivers striped performance and additional disk redundancy to help ensure higher availability for critical applications, services, and databases.

The price, other than complexity, is efficiency. Like RAID 1, when using RAID 10 a 50 percent disk cost is the penalty for redundancy. And, when factoring disk costs, remember that RAID 10 requires building arrays with multiple mirrors, so disk costs increase exponentially compared to a regular RAID 1 array normally composed of a single mirrored set of disks.

RAID 10 TL-DNR: Fast with expensive redundancy that can still fail.

Read more about RAID on TechRepublic

About

Erik Eckel owns and operates two technology companies. As a managing partner with Louisville Geek, he works daily as an IT consultant to assist small businesses in overcoming technology challenges and maximizing IT investments. He is also president o...

24 comments
peleckis26
peleckis26

All companies which i tried used software RAID. I think it`s ok, because i dont have any problem with it.

Erik Eckel
Erik Eckel

You calculate the disk cost of a RAID 5 array by solving the following equation: 1 - 1 / n where n = the number of disks. In my example, I said there were three 500GB disks. Thus, the equation becomes 1 - 1 / one 500GB disk, or 500GB. That's one disk, which equals .33 % of the total hard disk space. Here's an online array calculator you may find makes the calculations easier: http://www.z-a-recovery.com/art-raid-estimator.htm. EDIT: Removing note regarding rewrite; I wish to ensure disk cost information is clear. Note, another online calculator to assist RAID 5 calculations can be found here: http://www.raid-calculator.com/

ssummit
ssummit

How could 1-1/3 = .33?

MichaelCarr
MichaelCarr

RAID 5 section has errors and is not clear; please consider this rewrite: RAID 5 ??? potentially the most commonly deployed RAID version when seeking a balance between performance and redundancy ??? stripes data across three or more disks. Performance increases because read/write operations can be performed simultaneously across multiple disks. Because parity information is spread across multiple disks, too, a single disk can fail and the array should continue operating properly (albeit at reduced performance during the failure). Disk cost proves reasonable, too. Consultants can calculate RAID 5 efficiency using the equation 1 - (1/n) in which n equals the number of disks in the RAID array and n must be 2 or greater. For example, if there are three 500 GB disks in a RAID 5 array, the disk yield (i.e., available disk capacity as a fraction of the total raw disk capacity) will equal (1 - (1/3) = .667), i.e., one 500 GB disk is lost for protection from single drive failure. Note, given my preference, I deploy an extra drive within RAID 5 arrays for configuration as a hot online spare. Using a hot spare increases disk cost but helps minimize downtime, as a server configured in this manner does not need to be powered down when it???s necessary to replace a failed disk. As an added bonus, some RAID controllers will automatically start rebuilding a failed drive on the hot spare drive without any operator intervention required (the specific example M. Carr has seen is a Dell EDGE 2800e with Dell's house brand RAID controller). The general formula for "hot spare" with "parity" disk yield (i.e., available disk capacity as a fraction of the total raw disk capacity) is: 1 - (2/n) in which n equals the number of disks in the RAID array, n must be 3 or greater, and the 2 accounts for the "one hot spare" and "one parity" disk. A couple of "hot spare" with "parity" drive examples: o For the four raw drive case: the disk yield will equal (1 - (2/4) = .500), i.e., two (of the four) 500 GB (or whatever) disks are lost for protection from failure while also allowing quicker recovery when one drive dies. o For the six raw drive case: the disk yield will equal (1 - (2/6) = .667), i.e., two (of the six) 500 GB (or whatever) disks are lost for protection from failure while also allowing quicker recovery when one drive dies. RAID 5, with its balance of redundancy vs. performance, is a good fit well for many server environments. Occasionally additional redundancy (or tolerance for multiple simultaneous disk failures) is required. In such cases, RAID 10 may prove best.

MichaelCarr
MichaelCarr

What is TL-DNR??? A primer should spell out the words behind things like this (at least when 1st used). I looked on the web and found "too long, did not read" and I also found a clone/rip-off of the complete article. I still don't know what TL-DNR means. Any help on this???

pradipsagdeo
pradipsagdeo

1-1/3 = 2/3 = 0.667. There must be a typo up in the text, or I forgot my fractions ;-)

jakesty
jakesty

The statement: (1-1/3 = .33) is obviously incorrect. That's .66. And .66 is not the overhead, but the available storage.

StevenDDeacon
StevenDDeacon

I believe Raid 10 costs would increase geometrically not exponentially. If you had nine luns this would require 18 disk devices. If you required a tenth lun this would increase the disk devices to 20. If you had 10 luns and needed to double the amount of disk space required then you would increase your luns to 20. This means that the 10 luns of 20 disk devices would increase to 20 luns of 40 disk devices. Which simply doubles the number of physical disk devices required.

kylehutson
kylehutson

RAID-6 (like RAID-5, but with two parity drives) is now commonplace. Disks are also cheap enough that we do a lot of these, now.

manusoft
manusoft

We had an IBM server with a RAID-10 array that stored or main database. It functioned well for months and then suddenly the logical volume disappeared overnight. This was caused by a controller malfunction. Despite claims that the RAID config is kept in both the software and on the controller (battery), IBM was not able to restore the array without data loss, because it was RAID-10 (RAID-5 would have worked I was told). Luckily a data recovery specialist was able to rebuild our volume without any data loss, but this took time and money! Were back on HP servers with good old RAID-5.

mwclarke1
mwclarke1

We have several small individual Solaris servers all with software raid 1 sets Performance is good on these as with the overall system loads we can not tell a difference with or without hardware raid on these servers. Same with later versions of Linux, all depends on the role of the servers. Actually, until later and more recent versions of some of the top three RAID hardware cards available, at one point were were getting better performance under specific configurations and loads with the Linux software raid than using two of the common hardware vendor's RAID cards a few years ago. Today more and more systems are using SAN, all Windows uses SAN so they are all Hardware and running on Blade centers fiber connected to the SAN's so never have tried any software RAID on windows, I do believe would present performance issues on the more limited OS :-) Today's serer RAID options (top three) offer more higher performance devices now, 6GB SATA/SAS

Marc Jellinek
Marc Jellinek

RAID 10 is a stripeset made up of individual mirrorsets. You take a mirrored pair (efficiency: .50) plus another mirrored pair (efficiency: .50) and stripe them (overall efficiency: .50) Add mirrored pairs to the stripset as needed, maintaining .50 efficiency. The growth is flat: 4 - disk RAID 10 (disk size = n) each mirrorset is 2 drives, yielding n effective storage per mirrorset 2 mirrors are striped, yielding 2n effective storage, 2n effective cost efficiency: .50 cost: .50 6 - disk RAID 10 (disk size n) each mirrorset is 2 drives, yielding n effective storage per mirrorset 3 mirrors are striped, yielding 3n effective storage, 3n effective cost efficiency: .50 cost .50 100 - disk RAID 10 (disk size n) each mirrorset is 2 drives, yielding n effective storage per mirrorset 50 mirrors are striped, yielding 50n effective storage, 50n effective cost efficiency: .50 cost .50 Or have I done the math wrong?

NickNielsen
NickNielsen

Isn't the efficiency of a three-disk Raid 5 set .67? After all (at least in the retail world), 1-1/3 = 2/3 = .67. And, even allowing for the math error, how does the efficiency relate to the disk cost as you state it? If you want a three-disk array, you are going to have to buy three disks. Are you referring to monetary cost or to the cost in lost disk space? There's no explanation of that.

BALTHOR
BALTHOR

However the drives are RAID configured is how the computer runs.(Computer>adapter card>drives)In the BIOS of the adapter card is where you set up the RAID.In Dell it's Ctrl-A at boot up.There's even a format or erase utility there.I know that there's adapter card flash updates but this one works is fine for me.You'll need the adapter card driver file from Adaptec to install an OS.You should be able to copy it to a pen drive.The numbers are in the card's BIOS.

Erik Eckel
Erik Eckel

There's still some confusion here. The disk cost is 1 - 1 / n. If you calculate 1 - 1 /n, that equation provides the resulting total usable space. That resulting total usable space, of course, must be compared to the original total disk space allocation. Thus, if you have three 500GB disks, and you perform the calculation, you receive .66, or 1TB. Readers are correct in posting that number in comments here. But you must subtract that resulting number from the total of all the disks (100%) to determine the disk cost. Sorry that wasn't clear but I thought it was understood (because it's a cost or liability). I'll get an edit added to the piece.

NickNielsen
NickNielsen

is the amount of overhead required to maintain the fault tolerance information. Got it. Your results may be correct, but the math is still wrong. Inferring from results provided by the calculator you linked to: For a Raid 5 array with 3 500GB disks, 500 GB is is used to store fault tolerance information. Working backwards, 500GB is one-third of the total drive space of 1500GB, therefore the disk cost must be 1/3. For an array of 4 500GB disks, 500GB again stores fault tolerance information; 500GB is 1/4 of the 2000GB total available space, therefore the disk cost must be 1/4. Assuming the pattern holds true for arrays of all sizes, the disk cost equation must be 1/n, where n is the number of disks. The equation you provide (1 - 1/n) yields the ratio of usable drive space to total drive space, or the efficiency of the array with respect to total drive space. A 3-disk array makes 2/3 of the total drive space available, so it's 67% efficient; a 4-disk array makes 3/4 of the total drive space available, so it's 75% efficient.

Erik Eckel
Erik Eckel

Good question! Please see RE: RAID 5 Calculation Edit Note below.

Erik Eckel
Erik Eckel

Good note! Please see RE: RAID 5 Calculation Note below.

NickNielsen
NickNielsen

is the correct answer: Too long, did not read. In the case of this article, it's being used as a 'cute' way to summarize the information for those whose attention spans are measured in microseconds.

Erik Eckel
Erik Eckel

Please see RE: RAID 5 Calculation Note below for clarification.

Erik Eckel
Erik Eckel

Yes, you must subtract the resulting number from the original total, as we're calculating the cost. That is, indeed, correct. Please see RE: RAID 5 Calculation Note below for more.

jwhitetr
jwhitetr

I agree. I'm not sure how there's exponential growth. The cost of RAID 10 is 2 * N, where N is the cost of the single drive. That's linear growth, not exponential.

NickNielsen
NickNielsen

Assuming that disk cost is the amount of drive space allocated for overhead and not the number of disks lost to that overhead (I'm still not too clear on that from your explanations), you can calculate the disk cost with the simple equation C = D / n, where C is the disk cost in drive space, D is the total drive space available, and n is the number of disks. Thus for an array of 3 500 GB disks, the cost would be calculated by C = 1500GB / 3 = 500GB