Simple questions from memcached newbie
marc at corky.net
Thu Oct 12 06:23:51 UTC 2006
Despite what MySQL would want you to think, cluster is very specialized
and in its current form will probably only fit very, very specific
apps. I don't see it being used as a simple "memcached
replacement". I also don't think Cluster's performance bottleneck
(or rather, bottleneck by design) is at the storage backend, so having
memcache as a storage backend is not likely to improve performance much.
While I don't agree MySQL Cluster is difficult to configure - you simply
decide on your setup, create a configuration file and copy it over to
all your nodes, configuration examples exist around so you don't even
have to do much. After reading its docs re configuration it shouldn't
take you more than a few minutes to do so.
If you really want to use it as a memcached replacement, run it in its
'diskless' mode so it doesn't write anything to disk on any node,
everything is then kept in RAM, duplicated, of course.
But from my experience you wouldn't want to go there if you need
thousands or more queries per second to your cache, if you want to reach
that kind of performance with cluster you'd have to setup at LEAST a few
nodes (true, you can setup several nodes per server if they have
multiple CPUs) but if you need tens of thousands of queries per second
you'd probably need tens of nodes (or more like 20) and a decent switch
to push lots of internal traffic between Cluster's nodes (if you have
lots of writes/updates...).
But as a simple memcache replacement, cluster has significant network
and other overheads which you may not like, especially in version 5.0
which is "stable" (but in fact even that version IMHO is not so stable
nor it is "production grade" -- even if they do run it on many
> On Wed, 2006-10-11 at 15:08 -0500, Andy wrote:
>> The difference here is that memcached is at least an order of
>> easier to setup and maintain than MySQL cluster, and adding an
>> additional "storage backend" on memcached means you need to maintain
>> sets of software (memcached and mysql cluster) rather than one (for no
>> advantage really, since NDB is a memory based store, just like
>> memcached) resulting in increased complexity.
> Thanks Andy for adding in. I totally missed the maintenance part. Apart
> from performance, memcached is so simple to maintain. Mysql cluster
> requires too much of configuration!
More information about the memcached