Le 20/10/2014 16:39, Wido den Hollander a écrit : > On 10/20/2014 03:25 PM, 池信泽 wrote: >> hi, cephers: >> >> When I look into the ceph source code, I found the erasure code pool >> not support >> the random write, it only support the append write. Why? Is that random >> write of is erasure code high cost and the performance of the deep scrub is >> very poor? >> > To modify a EC object you need to read all chunks in order to compute > the parity again. > > So that would involve a lot of reads for what might be just a very small > write. > > That's also why EC can't be used for RBD images. I'm surprised this is a show stopper. Even if writes are really slow, I can see several uses case for RBD images on EC pools (archiving, template RDBs, ...). Using tier caching in a write-back configuration might even alleviate some of the performance problems if writes from the cache pool are done on properly aligned and sized chunks of data. It may be overly optimistic (the small benchmark on the following page might be done with all planets aligned...) but Sheepdog seems to implement EC storage with what would be interesting for me if I could get equivalent performance on purely sequential accesses with a theoretical Ceph EC RBDs. https://github.com/sheepdog/sheepdog/wiki/Erasure-Code-Support#performance Lionel Bouotn _______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com