[sheepdog] [PATCH v1 0/5] using disks to generate vnodes instead of nodes
Liu Yuan
namei.unix at gmail.com
Mon May 5 05:54:24 CEST 2014
On Tue, Apr 29, 2014 at 10:53:40AM +0800, Robin Dong wrote:
> From: Robin Dong <sanbai at taobao.com>
>
> When a disk is fail in a sheepdog cluster, it will only moving data in one node
> to recovery data at present. This progress is very slow if the corrupted disk is
> very large (for example, 4T).
>
> The solution to accelerate the speed of recovering is using disks to generate
> vnodes so the failing of one disk will cause whole cluster to reweight and
> moving data.
>
Personally I don't like #ifdef scatter all over the source files, making code
very hard to maintain and extend. So I hope this is just a interim patch set and
finally will take the shape that the two algorithms for vnode generation can be
completely decoupled into different code paths and controled by
dog cluster format -v {disk|node}
which choose disk or node as the basic unit for vnode generation.
Besides, I think you'd better write down the pros and cons of your new approach.
For a quick review, I can see that the disadvantage of the new method is we can't
support unlimited number of local disks for a single node any more and
constrained by a static number (32).
Is there any performance number for recovery boost using new method against old
one?
Thanks
Yuan
More information about the sheepdog
mailing list