You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by 史英杰 <sh...@gmail.com> on 2010/05/31 09:31:38 UTC

Does HBase support strong consistency?

Hi, All
  I learned from some forums that HBase focuses CA, which are two properties
in CAP. Does HBase support strong consistency in the data replicas, which
mechanism does it use to guarantee consistency?
   Thanks a lot!

Yingjie

Re: Does HBase support strong consistency?

Posted by Todd Lipcon <to...@cloudera.com>.
On Mon, May 31, 2010 at 12:31 AM, 史英杰 <sh...@gmail.com> wrote:

> Hi, All
>  I learned from some forums that HBase focuses CA, which are two properties
> in CAP. Does HBase support strong consistency in the data replicas, which
> mechanism does it use to guarantee consistency?
>

Yes, HBase is strongly consistent. Each row is hosted by a single region
server at a time, and a combination of row locks and multiversion
concurrency control is used to provide consistency within a row. During
failover, we take care to not allow writes from a new regionserver until the
previous one has been blocked out. There are currently a couple of rare bugs
where this doesn't work quite right (see HBASE-2231 for example) but they
are all blockers for the next release.

Replication is taken care of at the HDFS layer. In the next release of HBase
it will also be completely durable - no edit will be acked to the client
until it has been flushed to three HDFS replicas.

-Todd


-- 
Todd Lipcon
Software Engineer, Cloudera