]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commit
ceph: CRUSH mapping algorithm
authorSage Weil <sage@newdream.net>
Wed, 22 Jul 2009 19:38:20 +0000 (12:38 -0700)
committerSage Weil <sage@newdream.net>
Wed, 22 Jul 2009 19:38:20 +0000 (12:38 -0700)
commit7534a2e53f52bcf6dd476bd62fd8568e6bf67c10
tree1f9f2b744b72a3523cc9669ed2c42e776bb3e581
parent16320f4b917e12d23e9ecc26eca4a1062f06b05b
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]