]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commit
ceph: CRUSH mapping algorithm
authorSage Weil <sage@newdream.net>
Tue, 8 Sep 2009 22:07:47 +0000 (15:07 -0700)
committerSage Weil <sage@newdream.net>
Tue, 8 Sep 2009 22:07:47 +0000 (15:07 -0700)
commit50f5f192b9ed35e602e4585c941bfdb11115f0ee
tree09673ce80295ee03adc318429cdd95cfa01222ec
parentba8784cb2aa815cfb5c157c926ec491f1ecebb62
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]