On 8/4/2011 9:23 AM, Ryan Zezeski wrote:


    Are you confusing membase with memcache?  The former is a
    persistent, replicated store, or at least that is the claim; the
    latter a cache.
    http://www.couchbase.org/wiki/__display/membase/Membase+__Architecture
    <http://www.couchbase.org/wiki/display/membase/Membase+Architecture>


You are right, I was thinking of memcached when I wrote that reply.
  However, I don't know if that changes much of what I said.  Looking at
membase docs [1,2] it is essentially a drop-in (they use the term "OTC"
for Over The Counter) replacement for shops traditional memcached
deployments but adds persistence, replication, etc (although, I thought
I remember there being two different kinds of buckets in membase, one
that is persisted and one that is not, what's the default?).  Looking at
the vbucket literature it sounds to me as if replication is something
you decide to add, not on by default [2].  Furthermore, it's a
master/slave replication strategy which is different from Riak's
quorums.  For example, when doing a read against Riak with N=3 it will
_always_ contact 3 vnodes even if you set R=1 (it just won't wait for
all 3 replies).  Contrast that with membase which will only perform a
read from the master which will be less expensive because you don't have
to perform coordination on the replies.  For a membase deployment to
kinda look like a Riak one it should have 2 replicas using a one-to-many
strategy (as well as being persisted to disk).  I'd be interested to see
how the two would compare but now I'm drifting off topic a bit.

I can understand a performance difference in reads, considering the quorum strategy, but the timing mentioned involved writes. I don't know the membase internals but thought the claim of expanding the cluster by adding nodes meant they probably used a distribution strategy similar to riak.

Another recent message mentioned wanting a 'riak wishlist' somewhere. Some of mine would be a membase-like client that knows about multiple nodes for auto-failover, and the optional addition of some special master-slave nodes that could be used for atomic operations without needing to use a completely different client library for them.

--
  Les Mikesell
   [email protected]


_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to