RAID1 vs RAID5 [ was Re: 1 processor vs. 2]
danny at ricin.com
Wed Mar 3 16:54:16 PST 2004
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.
More information about the freebsd-questions