In addition to what Ted and Andrew said...

If cell A is updated after cell B *and* the application does not set any 
timestamps *and* cell A and B are part of the same row (i.e. have the same row 
key) then the timestamp of cell A will be greater then cell B's. If cells A and 
B are not related by row (or an alternate split policy) there is no guarantee 
(outside of the precision you can get from NTP).

If you do not mind the plug... These blogs might help to clarify the issues:
http://hadoop-hbase.blogspot.com/2012/03/acid-in-hbase.html
http://hadoop-hbase.blogspot.com/2012/09/keyvalue-explicit-timestamps-vs.html
http://hadoop-hbase.blogspot.com/2011/12/introduction-to-hbase.html

-- Lars




________________________________
 From: S. Zhou <[email protected]>
To: "[email protected]" <[email protected]> 
Sent: Friday, March 14, 2014 1:45 PM
Subject: HBase timestamp consistency aross multiple region servers?
 

Here is what I am trying to figure out: in the same table,  if cell A is 
updated after cell B, is it guaranteed that the time stamp of cell A is always 
bigger than the time stamp of cell B, even cell A and cell B could be stored on 
different machines (therefore these two machines might out of sync on time)?

The reason I am asking this question is: I want to use time stamp to order the 
updates by time. These updates are issued from multiple machines. I was 
thinking to use global counter (stored in a separated HBase table) but I guess 
that counter table might become a hot spot since each update needs to update 
this table.

My general problem is: I want to sort the updates stored in Hbase from multiple 
machines. Please let me know if you have good thoughts.

Thanks a lot
Senqiang

Reply via email to