On Fri, Mar 9, 2012 at 11:28 AM, Olaf van der Spek <[email protected]> wrote: > On Fri, Mar 9, 2012 at 10:15 AM, Henrik Ingo <[email protected]> > wrote: >> One thing I've been thinking of is to copy the Memcache API from MySQL >> 5.6 to Drizzle. >> >> Even if we are playing with json server, we don't have a >> high-performance, key-value type of "raw" API yet. Memcache API seems >> like the obvious choice for Drizzle? > > How does that API relate to handlersocket?
Good question! HandlerSocket is modeled (but completely different) on the mother of all NoSQL APIs namely NDB from MySQL Cluster. It supports things like columns, range scans and secondary indexes. Essentially it exposes all functionality of the storage engine API in MySQL. But it really shines at key-value operations. Memcache API has the great advantage of being compatible with all the existing and mature memcache clients out there. But of course the memcached protocol only supports key value. Since MySQL/InnoDB is not a key-value store, it also follows that there is no "natural" mapping between the memcached protocol and the data in InnoDB. This introduces admin overhead where you have to maintain a mapping from key-value to InnoDB columns. (I don't remember what MySQL 5.6 does by default here.) My subjective summary: HandlerSocket is better but choosing Memcache API is the pragmatic choice. Also consider that creators of HandlerSocket are now promoting the MySQL 5.6 solution. henrik -- [email protected] +358-40-8211286 skype: henrik.ingo irc: hingo www.openlife.cc My LinkedIn profile: http://www.linkedin.com/profile/view?id=9522559 _______________________________________________ Mailing list: https://launchpad.net/~drizzle-discuss Post to : [email protected] Unsubscribe : https://launchpad.net/~drizzle-discuss More help : https://help.launchpad.net/ListHelp

