Log in

No account? Create an account

Table Discovery, Memcached... and how does this get solved?

« previous entry | next entry »
Feb. 26th, 2007 | 03:18 pm

Somewhere in the last week I got a simple request, a user wanted table discovery for the memcached engine.

Both the Archive and Cluster engines support this.

Take an archive .ARZ table in 5.1, move it to another server. If you SELECT or INSERT off the table name it will be "discovered" immediately. The FRM just appears and everything just works (which means that yes in 5.1 all you have to do is save the ARZ file and you are set... no need for the FRM). Using archive_reader you can even make an online copy of the table (this was a feature request from one of the Livejournal developers last year at the user's conference).

Cluster has a similar mechanism. If you create a table on one front end MySQL server, all other MySQL servers that are talking to that cluster discover the table. The reason that this is possible is that the MySQL server just speaks to one cluster at a time.

The memcache engine can talk to many clusters, hell, it can talk to as many as you want on a per table basis. It does not have this limitation.

This is what makes table discovery difficult, there isn't just one cluster of memcached servers to talk too.

Its possible to setup one server and say "this is the dictionary server", and then have all servers look to that server. It would also be possible to iterate over each found server and poke at each memcached cluster looking for the table definition.

...or just make everyone type create table themselves on each server...

The older I get the lazier I get, I just want stuff to work.

Link | Leave a comment |

Comments {0}