Re: RAID1 vs RAID5 [ was Re: 1 processor vs. 2]

2004-03-05 Thread Jan Grant
On Thu, 4 Mar 2004, Chuck Swiger wrote:

 Also, RAID-5 performance degrades horribly if a drive is down, whereas RAID-1
 does fine...

Using the algorithm you indicate below, RAID-5 performance would not
degrade on the loss of a drive, it's start out that badly.

 A five-disk RAID-5 array has to read 4 sectors and write five sectors if you
 change one byte.

Wrong; see previous response.


-- 
jan grant, ILRT, University of Bristol. http://www.ilrt.bris.ac.uk/
Tel +44(0)117 9287088 Fax +44 (0)117 9287112 http://ioctl.org/jan/
Q: What's yellow and equivalent to the axiom of choice? A: Zorn's lemon.
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: RAID1 vs RAID5 [ was Re: 1 processor vs. 2]

2004-03-04 Thread Chuck Swiger
Danny Pansters wrote:
So statistically and theoreticaly RAID1 compares to no RAID at all as 2x read 
speed, 1x write speed (it needs to be written twice but through two heads on 
two drives seperately and assume they react and move at the same speed).
That's about right, but you should be aware of the fact that you are only 
considering a single transaction.  When you think about a stream of I/O 
requests, either round-robin or geometric division of read access can perform 
better depending on whether you are moving lots or data (few big requests) or 
doing many small reads and being bound by seek times.

Because the heads may be in different places do to distribution of reads, the 
heads don't end up writing data out at the exact same time; allowing write to 
be asyncronous rather than requiring both drives to complete a write operation 
can speed things up, particularly if geometric distribution of reads is being 
used.

Take a RAID5 with 5 drives that would in terms of data resiliance compare with 
a RAID1 of 3 drives at best (right?).
No.  A three-disk RAID-1 arry can retain data even if two drives fail.  The 
RAID-5 array will lose data if two drives fail.  In more complicated cases 
(RAID-10 and RAID-50), RAID-1 has significantly greater reliability than RAID-5.

Also, RAID-5 performance degrades horribly if a drive is down, whereas RAID-1 
does fine...

Change the above numbers for a RAID1 to 
3 drives and you have a 3x read and a 1x write speed. With the hypothetical 
RAID5 as above we have 3x read and 1x write speed for data plus 2x read and 
1x write for parity info which will usually be smaller in size. Let's assume 
they're of comparative sizes, to make things simple, then we have 5/2x reads 
and 1x writes to compare.
For your analysis to be valid, you need to consider the size of I/O requests 
and the stripe or interleave size of the RAID arrays.  For example:

A five-disk RAID-5 array has to read 4 sectors and write five sectors if you 
change one byte.  9 I/O ops compared with either 2 or 3, depending on whether 
one has a two-disk or three-disk RAID-1 mirror.  In other words, RAID-1 small 
writes are often a factor of four times faster than RAID-5 writes for data 
much smaller than stripe size.

Likewise, your analysis of RAID-5 read performance neglects to consider the 
fact that data is only available on one drive, whereas will be available on 
two (or more) drives for RAID-1.  For small reads, seek performance is 
critical and RAID-1 performance is close to n times that of a bare drive, 
where n is number of drives in array, and can sometimes even be slightly 
higher than n.  RAID-5 performance can at best be (n - 1) and is usually 
closer half that because the I/O distribution potential of mirroring means you 
can't choose to utilize a drive that's free.

Perhaps a better way of putting it is that RAID-1 can decrease response 
latency by handling reads in parallel, whereas a RAID-5 array cannot because a 
particular set of data is only available from one place.

--
-Chuck
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]


RAID1 vs RAID5 [ was Re: 1 processor vs. 2]

2004-03-03 Thread Danny Pansters
On Wednesday 03 March 2004 23:20, Reko Turja wrote:
  RAID-1 will be about 50% faster than RAID-5 doing reads regardless of
  size, and will also be *much* faster doing small writes-- by a factor
  of 4, perhaps.

 The abovementioned figures seem more like comparing RAID-0 (striping)
 to RAID-5 (striping with ECC) than RAID-5 to RAID-1 (mirroring).  In
 my experience mirroring is always the slowest RAID in terms of
 retrieving data, writes might be quite comparable with RAID-1 and
 RAID-5 though.

That makes sense. With more disks you have more disk heads to read with. 

So statistically and theoreticaly RAID1 compares to no RAID at all as 2x read 
speed, 1x write speed (it needs to be written twice but through two heads on 
two drives seperately and assume they react and move at the same speed).

Take a RAID5 with 5 drives that would in terms of data resiliance compare with 
a RAID1 of 3 drives at best (right?). Change the above numbers for a RAID1 to 
3 drives and you have a 3x read and a 1x write speed. With the hypothetical 
RAID5 as above we have 3x read and 1x write speed for data plus 2x read and 
1x write for parity info which will usually be smaller in size. Let's assume 
they're of comparative sizes, to make things simple, then we have 5/2x reads 
and 1x writes to compare. Therefore reads are poorer and there's more overall 
CPU/RAM overhead (with hardware RAID this depends on how you look at it, all 
RAID is essentially software RAID be it on your PC on on a chip inside it).

This simplified approach would indicate that 6 or more drives might be a nice 
thing for RAID5. I thought this over more often when thinking of how to 
deploy vinum and recently about whether to buy a RAID1 (cheap) or RAID5 ($$) 
ATA card and always thought this was the correct way to consider performance 
(resilliance is another thing). Do people agree on this? 

I often wondered because most of the meta-information around doesn't go into 
specifics like this. I think the above scenario applies only when there's a 
reasonable amount of I/O going on concurrently rather than if nothing ever 
happens but that lone write or read. That would change the assumption that 
more heads == more reads  equal writes (not rights ;-).

Sorry to divert a bit. What can I say, I like having a (somewhat informed) 
discussion... And this is still relevant to OP.


Greets,

Dan
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to [EMAIL PROTECTED]