Thanks J-D for the pointer. I read that before but I wanted to know
how it's actually implemented. I met developers for another
distributed NOSQL store yesterday in Tokyo, and wanted to compare
HBase's implementation against it.

I read the source codes further and now I know upsert uses row level
read-lock since it won't keep the older version of the KV.

https://github.com/apache/hbase/blob/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/MemStore.java#L487

Thanks,
Tatsuya


2011/2/16 Jean-Daniel Cryans <[email protected]>:
> For this there's also http://hbase.apache.org/acid-semantics.html
>
> J-D
>
> On Tue, Feb 15, 2011 at 4:58 PM, Tatsuya Kawano <[email protected]> wrote:
>>
>> Thanks Stack.
>>
>>> A bunch of our wiki has gone stale.  I've been moving pages to an
>>> obsolete section and marking pages themselves obosolete with pointers
>>> to the new definitive location for the info.
>>
>> This is fine to me.
>>
>> I was wondering how HBase guarantees row-level atomicity for read (Get / 
>> Scan) and I thought the diagram could help me to figure out. (I remember I 
>> saw the diagram a year ago.)  Then, now I read the source codes and found 
>> the answer. MemStoreScanner provides the row-level atomicity for read by not 
>> using read-lock but the read point timestamp.
>>
>> https://github.com/apache/hbase/blob/trunk/src/main/java/org/apache/hadoop/hbase/regionserver/MemStore.java#L677
>>
>> Thanks,
>> Tatsuya
>>
>>
>>
>> On 02/15/2011, at 11:53 PM, Stack wrote:
>>
>>> I don't have a copy and the images do not seem to be in google cache either.
>>>
>>> Locking has changed pretty radically since (and it sounds like its
>>> going to change again soon).  I'm going to mark the page obsolete.
>>>
>>> A bunch of our wiki has gone stale.  I've been moving pages to an
>>> obsolete section and marking pages themselves obosolete with pointers
>>> to the new definitive location for the info.  Should we be doing
>>> something different?
>>>
>>> Thanks,
>>> St.Ack
>>>
>>>
>>> On Mon, Feb 14, 2011 at 9:22 PM, Tatsuya Kawano <[email protected]> 
>>> wrote:
>>>> Hi,
>>>>
>>>> It looks like this wiki page has missing diagrams.
>>>> http://wiki.apache.org/hadoop/Hbase/HRSLocking
>>>>
>>>> Both "lockcompatibility.jpg" and "lock-sequencing.jpg" are missing.
>>>> Does anybody have a backup of them?
>>>>
>>>> Thanks,
>>>>
>>>> --
>>>> Tatsuya Kawano
>>>> Tokyo, Japan
>>>>
>>>> twitter: http://twitter.com/tatsuya6502

Reply via email to