I'm the author/maintainer of jmemcached; I'd be willing to do this and it'd
be quite easy to do, but Cassandra is missing a number of things which would
make it so we could only support a subset of the memcache protocol. Memcache
has:

set-if-not-present ("add")
atomic increment / decrement
compare-and-set
string append / prepend

that said, if people see a use case for this, I would do it. My
implementation of the memcached protocol (built over netty) supports both
its binary and text dialects, and is fast. When run against a
concurrent-linked-hashmap based back end on my box it can do about 40k
ops/second vs native C memcached about 50-6k ops (measured using memslap
benchmark tool).

Ryan

On Sun, Apr 4, 2010 at 8:47 PM, Paul Prescod <p...@prescod.net> wrote:

> Many Cassandra implementations seem to be memcached+X migrations, and some
> might be replacing memcached alone. Has anyone considered making a protocol
> handler or proxy that would allow Cassandra to talk the memached binary
> protocol?
>
> jmemcached + Cassandra = easy migration?
>
> I have barely started to consider the impedance mismatch issues, but the
> most glaring one is that the memcached namespace is flat, whereas
> Cassandra's has several levels of nesting. I think that this could be
> managed through configuration files. Either the user could map all Memcached
> stuff to a single ColumnFamily, or they could define a convention for
> splitting their keys based on special namespace characters like ":" or "_".
> The user could say how to interpret keys without enough parts (i.e. whether
> to treat the missing part as the keyspace or the columnfamily).
>
>  Paul Prescod
>
>

Reply via email to