Re: [Ceph-community] Consistency Properties of Ceph

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Greg,
That answers my question. Thanks for your response!

-Sam

On Fri, Aug 10, 2018 at 9:21 AM, Gregory Farnum <gfarnum@xxxxxxxxxx> wrote:
> On Thu, Aug 9, 2018 at 9:57 AM, Sam Kumar <samkumar99@xxxxxxxxx> wrote:
>> Hi Joao,
>> Thanks for your response, and sorry for posting my original question
>> on the wrong mailing list.
>>
>> Based on your explanation, it seems that reads and writes to the same
>> object (key-value pair) in RADOS will be linearizable, because:
>>
>> 1. the OSD that is the "primary" for a PG handles all requests for an
>> object in that PG, and
>> 2. at any one time, at most one OSD thinks it's the "primary" for a
>> particular PG (as explained in Section 3.2 of
>> https://ceph.com/wp-content/uploads/2016/08/weil-rados-pdsw07.pdf).
>>
>> Am I correct that RADOS provides linearizability for this reason?
>
> Yes, any given RADOS object is linearizable. (It in fact has a log
> that is literally linear.) Trying to extend language about
> linearizability out to a distributed system can get a little weird so
> if you want more extended assertions you'll need to define terms quite
> specifically.
> -Greg
>
>>
>> -Sam
>>
>> On Thu, Aug 9, 2018 at 1:22 AM, Joao Eduardo Luis <joao@xxxxxxx> wrote:
>>>> On 08/08/2018 11:44 PM, Sam Kumar wrote:
>>>>> But, what specific consistency properties are guaranteed by Ceph RADOS?
>>>>> In particular, does it guarantee consistency in the classic sense (i.e.,
>>>>> linearizability) or something weaker?
>>>>>
>>>>> At a high level, based on the design of Ceph, it seems like it should be
>>>>> linearizable (as it uses stable hashing in the common case and Paxos on
>>>>> failure). But I wanted to ask the community since I couldn't find
>>>>> RADOS's specific consistency property documented anywhere.
>>>
>>> Paxos is only used by the monitors, and is relied upon to maintain the
>>> cluster state (i.e., mostly maps that allow clients to figure out where
>>> the data is).
>>>
>>> The data consistency properties are guaranteed by the OSDs. They ensure
>>> we get strong consistency semantics by serializing the requests per-pg.
>>>
>>>   -Joao
>> --
>> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux