On Fri, May 30, 2008 at 1:47 PM, Krishna Srinivas <krishna@xxxxxxxxxxxxx> wrote: > On Fri, May 30, 2008 at 12:32 PM, Amar S. Tumballi <amar@xxxxxxxxxxxxx> wrote: >>> > >>> > AFR ( STRIPE (server1, server2), server3) >>> > >>> > Let afr serve over the stripe for high performance by default, and >>> > server3 >>> > be a backup. This works well for read-heavy workloads. >>> >>> How will afr over stripe help for read-heavy work loads? >> >> Kris, this is because, you can say 'read-subvolume' as stripe volume, >> through which you can read faster (because read calls can be sent parallally >> to two nodes, and hence faster). > > Amar, > > Even in case of stripe over afr parallel reads/wries can be issued, so it would > perform the same way as afr over stripe. > Giving read-subvolume option in afr over stripe will make one of the subvols > of AFR un-utilized for reads (this will create bad read performance when > both the subvols of stripe are afrs) typo, it will have bad performance when both the subvols of afr are stripes. In the sense, more number of servers will go un-utilized for reads. > > If we compare afr over all-stripes or stripe over all-afrs, performance would > be similar theorytically. > >> >>> >>> I suggested stripe over afrs keeping in mind AFR's currently bad selfheal >>> logic >>> for big files. Selfheal will be very optimal in stripe over afrs. >> >> For the very reason AFR over STRIPE makes sense. because in this case, afr >> doesn't see any files with holes, where as in stripe over afr, you see files >> with holes below afr. > > True, as afr's selfheal does not handle holes properly, afr over stripe makes > better utilization of space when selfheal is done. > > Just thinking further about uptime of the cluster, stripe over afr > will fare better. > (for a given number of servers) > > Consider afr over stripe, afr A1 has stripe S1 and S2; S1 has P1 P2 P3 > and S2 has P4 P5 P6. > Probability that the cluster will go down when 2 servers will fail is: > 3/6 * 3/5 = 3/10 (one server failing in each stripe) > > Consider stripe over afr, stripe S1 has A1 A2 A3; A1 has P1 P2 > A2 has P3 P4 and A3 has P5 P6 > Probability that the cluster will go down when 2 servers will fail is: > 2/6 * 1/5 = 1/15 (both the servers of an afr failing) > > So stripe over afr will have better uptime. > > Krishna > >> >> Amar >> >>> >>> Krishna >>> >>> > >>> > avati >>> > >>> >> >> -- >> Amar Tumballi >> Gluster/GlusterFS Hacker >> [bulde on #gluster/irc.gnu.org] >> http://www.zresearch.com - Commoditizing Super Storage! >