The previous object store in Ceph, filestore, has a number of limitations that have started to limit the scale at which Ceph can operate, as well as the features that it can offer. The following are some of the main reasons why BlueStore was needed.
Why was it needed?
Ceph's requirements
An object in Ceph along with its data also has certain metadata associated with it, and it's crucial that both the data and metadata are updated atomically. If either of this metadata or data is updated without the other, the whole consistency model of Ceph is at risk. To ensure that these updates occur atomically, they need to be carried out in a single transaction.