Per section 3.4.4 The default bucket type straw computes the hash of (PG number, replica number, bucket id) for all buckets using the Jenkins integer hashing function, then multiply this by bucket weight (for OSD disks the weight of 1 is for 1 TB, for higher level it is the sum of contained weights). The selection function chooses the bucket/disk with the max value: So if you add a OSD disk, there is a new disk id that enters this competition and will get PG from other OSDs proportional to its weight, which is a desirable effect, but a side effect is that the weight hierarchy has slightly changed so now some older buckets may win PGs from other older buckets according to the hash function. So straw does have overhead when adding (rather than replacing), it does not do minimal PG re-assignments. But it terms of overall efficiency of adding/removing of buckets at end and in middle of hierarchy it is the best overall over other algorithms as seen on chart 5 and table 2. On 2017-09-22 08:36, Will Zhao wrote:
|
_______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com