Ceph RADOS linearizable?
David Disseldorp
ddiss at samba.org
Wed Mar 8 17:47:41 UTC 2023
Hi Ralph!
This a question better suited to the Ceph development list, but I'll do
my best to try to answer...
On Wed, 8 Mar 2023 15:53:31 +0100, Ralph Boehme wrote:
> Hey David,
>
> I'm currently doing some research into distributed databases. I'm
> tracking candidates here:
>
> https://wiki.samba.org/index.php/Samba_on_Scale
>
> One of the tricky things is figuring out the consistency level [1]
> provided by the database. There's no public RADOS documentation that
> clearly describes the consistency provided in industry standard terms,
> I'm pretty sure it's linearizabile, but the only real reference
> mentioning linearizability I could find is from a RADOS related research
> paper that talks about adding support for weaker consistency levels:
>
> http://www.cs.nthu.edu.tw/~ychung/conference/2016_ICPADS.pdf
>
> Can you confirm whether RADOS is indeed Linearizabile? I'm pretty sure
> it is, but would like to be sure. :)
RADOS is a very broad interface when considering linearizability, but
if you choose to focus on key/value storage accessed via the Ceph omap
interface, then yes, my understanding is that OSD requests for a single
object are processed in a way that provides atomic consistency from a
RADOS client perspective. That guarantee goes out the window if multiple
objects are involved, or the I/O is split across multiple OSD requests;
a single OSD request can contain multiple (sequentially handled) I/O
operations.
Cheers, David
More information about the samba-technical
mailing list