[sheepdog-users] [Sheepdog Announcement] Erasure coding is fully functional with Sheepdog now
namei.unix at gmail.com
Tue Oct 22 16:41:44 CEST 2013
On Tue, Oct 22, 2013 at 02:23:53PM +0000, Andrew J. Hobbs wrote:
> Last question then: Are there predefined stripe+parity settings that
> you would recommend for specific targetted redundancy or performance
> levels? For example, if I have 7 nodes in a cluster, and I wanted to
> minimize redundant data storage while surviving up to three machines
> dropping out?
> Would that by default be 4:3? Or for larger node counts?
There is no default value. The default paramter is replicated volume with
-c x when you format the cluster.
4:3 is reasonable for 7 nodes cluster.
There is some clues that users can consdier:
1. x:y means sheepdog have to allocate x:y objects to hold data and parity
strips. For every write, e.g, write 4k with the 4:2 volume, we'll send 6k
data to sheepdog split into 6 write request each with 1k length. So compare
with 3 copies replicated volume, erasure will send less data (6k vs 12k),
but will need more IOPS (6 vs 3). For read, we'll get 4k data which split
into 4 requests with 1k length for the cluster, compared with replicated
volume, erasure will need more IOPS (4 vs 1), but the data traffic are the
same for read.
2. normally, the smaller (x + y), the less IOPS we'll need for writes.
the smaller x, the less requests we'll send for read.
the bigger y, we'll get higher surviving rate.
More information about the sheepdog-users