?

Log in

No account? Create an account

Tokyo Cabinet == Tokyo Engine!

« previous entry | next entry »
Nov. 4th, 2007 | 03:31 pm

Mikio Hirabayash released his TokyoCabinet DB. So I took a minute this morning to play around with it!


mysql> INSTALL PLUGIN tokyo SONAME 'libtokyo_engine.so';
Query OK, 0 rows affected (0.00 sec)

mysql> show plugins;
+------------------+--------+--------------------+-----------------------+---------+
| Name | Status | Type | Library | License |
+------------------+--------+--------------------+-----------------------+---------+
| binlog | ACTIVE | STORAGE ENGINE | NULL | GPL |
| partition | ACTIVE | STORAGE ENGINE | NULL | GPL |
| ARCHIVE | ACTIVE | STORAGE ENGINE | NULL | GPL |
| BLACKHOLE | ACTIVE | STORAGE ENGINE | NULL | GPL |
| CSV | ACTIVE | STORAGE ENGINE | NULL | GPL |
| FEDERATED | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MEMORY | ACTIVE | STORAGE ENGINE | NULL | GPL |
| InnoDB | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MRG_MYISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MyISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| SKELETON | ACTIVE | STORAGE ENGINE | libskeleton_engine.so | BSD |
| MEMCACHE | ACTIVE | STORAGE ENGINE | libmemcache_engine.so | GPL |
| memcache_servers | ACTIVE | INFORMATION SCHEMA | libmemcache_engine.so | GPL |
| TOKYO | ACTIVE | STORAGE ENGINE | libtokyo_engine.so | BSD |
+------------------+--------+--------------------+-----------------------+---------+
14 rows in set (0.00 sec)

mysql>

:)

TokyoCabinet:
http://tokyocabinet.sourceforge.net/

My morning's hack:
http://hg.tangent.org/TokyoEngine

I had to modify his engine to make this work. There were no C++ declaration around the include headers, and the tokyocabinet.pc file has a dangling variable in its libs.
I know nothing about performance at the moment... this was just me playing around for a bit. Tokyo Cabinet is his successor to QDBM and the work was sponsored by Mixi.jp (aka... think Facebook for Japan fro the ones of you who never study what the rest of the world is doing).

Link | Leave a comment |

Comments {9}

Brian "Krow" Aker

(no subject)

from: krow
date: Nov. 5th, 2007 07:54 am (UTC)
Link

The one interesting thing about it is that it will work in memory... and it will be able to store blobs. An in memory blob store might be nice. I'll benchmark it against the built in memory engine to see if it is any faster.

This only took me an hour to do, and I did it more to see if someone else would pick it up.

For in memory blob store, I am starting to use the memcached engine (and a new version of it will be out this week).

Reply | Parent | Thread