Hi Lin, In the CAP theorem Consistency stands for atomic consistency, i.e., each CRUD operation occurs sequentially in a global, real-time clock Availability means each server if not partitioned can accept requests
Partition means network partition As far as I understand (although I do not see any official documentation), HBase achieved "per key sequential consistency", i.e., for a specific key, there is an agreed sequence, for all operations on it. This is weaker than strong or sequential consistency, but stronger than "eventual consistency". BTW: CAP was proposed by Prof. Eric Brewer... http://en.wikipedia.org/wiki/Eric_Brewer_%28scientist%29 Best Regards, Wei Wei Tan Research Staff Member IBM T. J. Watson Research Center 19 Skyline Dr, Hawthorne, NY 10532 w...@us.ibm.com; 914-784-6752 From: Lin Ma <lin...@gmail.com> To: user@hbase.apache.org, Date: 08/07/2012 09:30 PM Subject: consistency, availability and partition pattern of HBase Hello guys, According to the notes by Werner*, "*He presented the CAP theorem, which states that of three properties of shared-data systems—data consistency, system availability, and tolerance to network partition—only two can be achieved at any given time." => http://www.allthingsdistributed.com/2008/12/eventually_consistent.html But it seems HBase could achieve all of the 3 features at the same time. Does it mean HBase breaks the rule by Werner. :-) If not, which one is sacrificed -- consistency (by using HDFS), availability (by using Zookeeper) or partition (by using region / column family) ? And why? regards, Lin