]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commit
ceph: CRUSH mapping algorithm
authorSage Weil <sage@newdream.net>
Tue, 22 Sep 2009 17:14:36 +0000 (10:14 -0700)
committerSage Weil <sage@newdream.net>
Tue, 22 Sep 2009 17:14:36 +0000 (10:14 -0700)
commitf9c7934d4aeeaf6c689fef2fed74d87d117defb4
tree4ec80bcf862273f01397a4ee2237c63cb9937f9f
parent660a8693442f9fa9e016e2589ae2f2f0980a7155
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]