You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by mi...@apache.org on 2015/02/12 05:54:05 UTC

hbase git commit: HBASE-11910 Document preemptive Call Me Maybe results

Repository: hbase
Updated Branches:
  refs/heads/master 8aa4eeb1c -> b7f6a4580


HBASE-11910 Document preemptive Call Me Maybe results


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/b7f6a458
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/b7f6a458
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/b7f6a458

Branch: refs/heads/master
Commit: b7f6a45803d6b56a2ff56ebcac6a78aee100b409
Parents: 8aa4eeb
Author: Misty Stanley-Jones <ms...@cloudera.com>
Authored: Tue Feb 10 14:28:06 2015 +1000
Committer: Misty Stanley-Jones <ms...@cloudera.com>
Committed: Thu Feb 12 14:53:55 2015 +1000

----------------------------------------------------------------------
 src/main/asciidoc/_chapters/performance.adoc | 11 +++++++++++
 1 file changed, 11 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/b7f6a458/src/main/asciidoc/_chapters/performance.adoc
----------------------------------------------------------------------
diff --git a/src/main/asciidoc/_chapters/performance.adoc b/src/main/asciidoc/_chapters/performance.adoc
index 48b647c..2155d52 100644
--- a/src/main/asciidoc/_chapters/performance.adoc
+++ b/src/main/asciidoc/_chapters/performance.adoc
@@ -100,6 +100,17 @@ Using 10Gbe links between racks will greatly increase performance, and assuming
 
 Are all the network interfaces functioning correctly? Are you sure? See the Troubleshooting Case Study in <<casestudies.slownode>>.
 
+[[perf.network.call_me_maybe]]
+=== Network Consistency and Partition Tolerance
+The link:http://en.wikipedia.org/wiki/CAP_theorem[CAP Theorem] states that a distributed system can maintain two out of the following three charateristics: 
+- *C*onsistency -- all nodes see the same data. 
+- *A*vailability -- every request receives a response about whether it succeeded or failed.
+- *P*artition tolerance -- the system continues to operate even if some of its components become unavailable to the others.
+
+HBase favors consistency and partition tolerance, where a decision has to be made. Coda Hale explains why partition tolerance is so important, in http://codahale.com/you-cant-sacrifice-partition-tolerance/. 
+
+Robert Yokota used an automated testing framework called link:https://aphyr.com/tags/jepsen[Jepson] to test HBase's partition tolerance in the face of network partitions, using techniques modeled after Aphyr's link:https://aphyr.com/posts/281-call-me-maybe-carly-rae-jepsen-and-the-perils-of-network-partitions[Call Me Maybe] series. The results, available as a link:http://eng.yammer.com/call-me-maybe-hbase/[blog post] and an link:http://eng.yammer.com/call-me-maybe-hbase-addendum/[addendum], show that HBase performs correctly.
+
 [[jvm]]
 == Java