couchdb-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From robertkowal...@apache.org
Subject [1/2] mem3 commit: updated refs/heads/master to fb5f56c
Date Mon, 16 Mar 2015 23:34:36 GMT
Repository: couchdb-mem3
Updated Branches:
  refs/heads/master a9608cfdf -> fb5f56c21


change readme for the couchdb project


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

Branch: refs/heads/master
Commit: f62d43836972b2317784c397e69082a0850d74f4
Parents: a9608cf
Author: Robert Kowalski <rok@kowalski.gd>
Authored: Sun Mar 15 23:27:26 2015 +0100
Committer: Robert Kowalski <rok@kowalski.gd>
Committed: Mon Mar 16 23:24:50 2015 +0100

----------------------------------------------------------------------
 README.md | 19 ++++++-------------
 1 file changed, 6 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb-mem3/blob/f62d4383/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index ba6e826..fe3e459 100644
--- a/README.md
+++ b/README.md
@@ -1,33 +1,26 @@
 ## mem3
 
-Mem3 is the node membership application for clustered [CouchDB][1].  It is used in [BigCouch][2]
and tracks two very important things for the cluster:
+Mem3 is the node membership application for clustered [CouchDB][1]. It is used in CouchDB
since version 2.0 and tracks two very important things for the cluster:
 
  1. member nodes
  2. node/shards mappings for each database
 
 Both the nodes and shards are tracked in node-local couch databases.  Shards are heavily
used, so an ETS cache is also maintained for low-latency lookups.  The nodes and shards are
synchronized via continuous CouchDB replication, which serves as 'gossip' in Dynamo parlance.
 The shards ETS cache is kept in sync based on membership and database event listeners.
 
-A very important point to make here is that BigCouch does not necessarily divide up each
database into equal shards across the nodes of a cluster.  For instance, in a 20-node cluster,
you may have the need to create a small database with very few documents.  For efficiency
reasons, you may create your database with Q=4 and keep the default of N=3.  This means you
only have 12 shards total, so 8 nodes will hold none of the data for this database.  Given
this feature, we even shard use out across the cluster by altering the 'start' node for the
database's shards.
+A very important point to make here is that CouchDB does not necessarily divide up each database
into equal shards across the nodes of a cluster.  For instance, in a 20-node cluster, you
may have the need to create a small database with very few documents.  For efficiency reasons,
you may create your database with Q=4 and keep the default of N=3.  This means you only have
12 shards total, so 8 nodes will hold none of the data for this database.  Given this feature,
we even shard use out across the cluster by altering the 'start' node for the database's shards.
 
 Splitting and merging shards is an immature feature of the system, and will require attention
in the near-term.  We believe we can implement both functions and perform them while the database
remains online.
 
 ### Getting Started
 
-Mem3 requires R13B03 or higher and can be built with [rebar][6], which comes bundled in the
repository.  Rebar needs to be able to find the `couch_db.hrl` header file; one way to accomplish
this is to set ERL_LIBS to point to the apps
-subdirectory of a bigcouch checkout, e.g.
+Mem3 requires R13B03 or higher and can be built with [rebar][2], which comes bundled in the
repository.  Rebar needs to be able to find the `couch_db.hrl` header file; one way to accomplish
this is to set ERL_LIBS to point to the apps
+subdirectory of a CouchDB checkout, e.g.
 
-    ERL_LIBS="/usr/local/src/bigcouch/apps" ./rebar compile
+    ERL_LIBS="/usr/local/src/couchdb/apps" ./rebar compile
 
 ### License
 [Apache 2.0][3]
 
-### Contact
- * [http://cloudant.com][4]
- * [info@cloudant.com][5]
-
 [1]: http://couchdb.apache.org
-[2]: http://github.com/cloudant/bigcouch
+[2]: http://github.com/rebar/rebar
 [3]: http://www.apache.org/licenses/LICENSE-2.0.html
-[4]: http://cloudant.com
-[5]: mailto:info@cloudant.com
-[6]: http://github.com/basho/rebar


Mime
View raw message