In-Memory Performance

Les Mikesell lesmikesell at gmail.com
Thu Aug 4 11:13:34 EDT 2011


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
    lesmikesell at gmail.com




More information about the riak-users mailing list