ceph: CRUSH mapping algorithm
authorSage Weil <sage@newdream.net>
Tue, 6 Oct 2009 18:31:11 +0000 (11:31 -0700)
committerSage Weil <sage@newdream.net>
Tue, 6 Oct 2009 18:31:11 +0000 (11:31 -0700)
commit5ecc0a0f8128b1876e8614638deaed49cc8b174c
tree6b1511b0e3ec2a349a24faebc375548b14ee137a
parentf24e9980eb860d8600cbe5ef3d2fd9295320d229
ceph: CRUSH mapping algorithm

CRUSH is a pseudorandom data distribution function designed to map
inputs onto a dynamic hierarchy of devices, while minimizing the
extent to which inputs are remapped when the devices are added or
removed.  It includes some features that are specifically useful for
storage, most notably the ability to map each input onto a set of N
devices that are separated across administrator-defined failure
domains.  CRUSH is used to distribute data across the cluster of Ceph
storage nodes.

More information about CRUSH can be found in this paper:

    http://www.ssrc.ucsc.edu/Papers/weil-sc06.pdf

Signed-off-by: Sage Weil <sage@newdream.net>
fs/ceph/crush/crush.c [new file with mode: 0644]
fs/ceph/crush/crush.h [new file with mode: 0644]
fs/ceph/crush/hash.h [new file with mode: 0644]
fs/ceph/crush/mapper.c [new file with mode: 0644]
fs/ceph/crush/mapper.h [new file with mode: 0644]