On Wed, 2006-06-28 at 22:13 +0100, Peter Tribble wrote:
> On Wed, 2006-06-28 at 17:32, Erik Trimble wrote:
> > Given a reasonable number of hot-spares, I simply can't see the (very) 
> > marginal increase in safety give by using HW RAID5 as out balancing the 
> > considerable speed hit using RAID5 takes. 
> 
> That's not quite right. There's no significant difference in
> performance,
> and the question is whether you're prepared to give up a small amount of
> space for orders of magnitude increase in safety.

As indicated by previous posts, even with HW assist, RAID5/6 on N disks
will be noticably slower than a stripe of N disks. Theoretical read
performance for RAID5 is at best (in a limited number of cases) equal to
striping, and for the general read case, is (N-1)/N slower. Even
assuming no performance hit at all for the parity calculation on writes,
writes to a RAID5 are at best equal to a stripe (assuming a full stripe
has to be written), and usually at least (N-1)/N slower, as the parity
must be written in addition to the normal data (i.e. N/(N-1) data must
be written, rather than N).


> Each extra disk you can survive the failure of leads to a massive
> increase in safety. By something like (just considering isolated
> random disk failures) the ratio of the MTBF of a disk to the time
> it takes to get a spare back in and repair the LUN. That's something
> like 100,000 - which isn't a marginal increase in safety!
> 
> Yes, I know it's not that simple. The point to take from this is
> simply that being able to survive 2 failures instead of 1 doesn't
> double your safety, it increases it by a very large number. And
> by a very large number again for the next failure you can survive.
> 
> In the stripe case, a single disk loss (pretty common) loses all your
> redundancy straight off. A second disk failure (not particularly rare)
> and all your data's toast. Hot spares don't really help in this case.
> 
> At this point having HW raid-5 underneath means you're still humming
> along safely.
> 

Agreed. However, part of the issue that comes up is that you take into
account the possibility of a drive failing before the hotspare can be
re-silvered when a drive.  In general, this is why I don't see stripes
being more than 6-8 drives wide. It takes somewhere between 30 minutes
and 2 hours to resilver a drive in a mirrored stripe of that size
(depending on capacity and activity). So, the tradeoff has to be made.
And, note that you'll reduce your performance with the RAID5 resyncing
for considerably longer than it takes to re-silver the stripe. 

Put in another way (assuming a hotspare is automatically put in place
after a drive failure): 

With mirrored stripes, I'm vulnerable to complete data loss while the
2nd stripe resyncs.  Say 2 hours or so, worst case.  By percentages, a
2nd drive loss in a mirrored stripe has a 50% chance of causing data
loss.

With mirrored RAID5, I'm invulnerable to a second drive loss. However,
my resync time is vastly greater than for a stripe, increasing my window
for more drive failures by at least double, if not more.

It's all a tradeoff. However, in general, I haven't see 2nd drives fail
within a stripe resync time, UNLESS I saw many drives fail (that is,
30-40% of a group fail close together), in which case, this overwhelms
any RAID ability to compensate.  It's certainly possible.  (which is why
striped mirrors are preferred to mirrored stripes).


In the end, it comes down to the local needs. Speaking in
generalizations, my opinion is that a mirror of RAID5 doesn't
significantly increase your safety enough to warrant a 15-20% reduction
in space, and at least that in performance, vs a mirror of stripes. 


And, of course, backups help. :-)


-- 
Erik Trimble
Java System Support
Mailstop:  usca14-102
Phone:  x17195
Santa Clara, CA
Timezone: US/Pacific (GMT-0800)

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to