Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

RAID 0+1 versus RAID 5

Status
Not open for further replies.

SagaLore

IS-IT--Management
May 1, 2003
17
US
I'm wondering how the two RAIDs compare. Years ago I read articles that shown that RAID 0+1 (mirrored stripes) IDE controllers were showing better performance than RAID 5. Not only did you gain double performance from the striping for writes, but you gained quadruple performance for reads because of the 2x speed of reading stripes plus having 2 mirrors available to read from.

BUT, that was an article about IDE RAID, I want to know how this applies to today's SCSI controllers. I've read a lot of info about RAID 5 having a write performance hit, because of calculating the parity. But I'm mostly concerned about the read performance because I plan on applying this to some web servers I will be building.
 
RAID 1 or 0+1 is for read intense applications.

RAID 5 is great for write intense apps such as fileserver
 
"RAID 5 is great for write intense apps such as a fileserver"

That goes completely against everything that I have read... parity calculation takes a huge performance hit.
 
4+P parity calculation can avoid read-modify write depending on OS ($+P works very nicely on AIX).

Sometimes our uncached Raid 5 setups write faster than they read!

Craigy
 
Sagalore, you stated:

"But I'm mostly concerned about the read performance because I plan on applying this to some web servers I will be building."

RAID 10 is an excellent RAID, but it's quite expensive, RAID 5 gives you a very good availability and for your needs RAID 5 is the best affordable performance/cost solution.

Cheers.
 
Let's say that cost isn't a concern.

Plus, I'm not really looking for what my "best affordable performance/cost solution" is, I want to know specifically what the performance difference is between SCSI RAID10 and RAID5 - benchmarks - regardless of what my application for it is.
 
Ok, then the best raid for performance is RAID 10. It has no penalty on writes... in fact you actually are writing to 2 raid 0! and (depending on the model/brand) you could read from the mirror with the most near data.

RAID 5 has a penalty on writes because of parity calculation, NOT reads, so for a web server it's a good solution, BUT with the current technology, mayor disk arrays have cache configured in order to have no trouble with write penalties.. on reads you have more performance with RAID 10, but raid 5 is quite near.

Cheers.
 
There you go, back on my wavelength. :)

I wonder what the Delta is in performance comparison, the more disks you add.

Scenario1:

RAID5 - 4 disks (3 striping, 1 parity)
RAID10 - 4 disks (2 mirrors of 2 stripes)

Scenario2:

RAID5 - 10 disks (9 striping, 1 parity)
RAID10 - 10 disks (2 mirrors of 5 stripes)

So based on that, I guess it depends on how the controller treats the mirror. If I'm reading from 9 stripes, that could be blazingly fast. But if I'm reading from the mirror, am I just reading from 5 stripes, or is the mirror being searched asychronously giving me 10 stripes?
 
or is the mirror being searched asychronously giving me 10 stripes?" it depends on the brand.. some models has the algoritm to read data from the nearest place (mirror 1 or 2), other reads only from the primary mirror and secundary mirror is for security only. But I think the mayority of brands support the asynchronic reads.
 
I would like to add that with the Raid0+1 or Raid1+0, you do not have the benefit of parity as in Raid5. Wouldn't this compromise data integrity (if data integrity is a concern)? In addition, which implementation would be faster (seeing that parity is not a concern); the mirror of stripes(10) or the stripe of mirrors(01)?
 
1. parity is only one kind of protection, with RAID 10 you don't need parity because you actually are *mirroring" giving you the best protection and performance (no penalty for parity calculation). In RAID 5, if a disk drive get failed, dtaa must be *recalculated* in order to restore it, in RAID 10 data doesn't need be calculated, because you have it in other disk.

2. By papers, RAID 10 should have better performance, but if you ask *me*, it's the same...

Cheers.
 
Just a note about wanting to compare RAID5 with 10 disks and RAID10 with 10 disks. You mentioned for the RAID10 setup, it would be "2 mirrors of 5 stripes" (which is really RAID 0+1). You never want to do this - you'd get much better availability doing the opposite (RAID 1+0 or RAID "10"). You want to create 5 mirrored pairs, then create a single stripe across the 5 mirrored pairs.

Statistically, if you were to have 2 disks fail at the same time, the likelyhood of losing data is much lower with RAID 1+0 than it is with RAID 0+1. You don't loose any capacity, but it would be interesting to see which performs better. My guess is that any performance difference would be tiny, whichever way it would go.

Josh
 
Hi,
in my opinion you can't compare a raid10 with 10 disks with a raid5 with 10 disks because you are comparing two different scenarios. You have a lot more space for data on the raid5. you would need 18 disks in a raid 10 to reach the disk space of a 10 disk raid 5.
There's one more advantage of a raid 10 regarding performance. If a disk fails in a raid 5 you would need another disk where the data could be rearranged. This would cost time because the data needs to be written on the new disk and it also needs to be calculated. Please correct me if I understood this wrong. You cannot access the data until this has been done. If a disk fails in a raid 10 you can still access the data all the time. So this can save you a lot of time.

busche
 
Where P is the performance of a single splindle, and N is number of spindles:

RAID 1/0+1 read performance
P*N
RAID 1/0+1 write performance
P*N/2

RAID 5 Read performance
P*(N-1)

RAID 5 Write Performance
P*N/4

Assuming 6 10K RPM drives in each set:

RAID 5 Read = 500 IO/sec
RAID 5 Write = 125 IO/sec

RAID 0+1 Read = 600 IO/sec
RAID 0+1 Write = 300 IO/sec

With RAID 5, you gain space at the expense of performance; especially write performance. For file servers with data that does not change much, this can be a good option. For transactional applications like SQL OLTP or Exchange that are heavily write dependent, RAID 5 write performance will require many more physical spindles than RAID 0+1 to meet a given IO level.

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top