Tokyo Cabinet Elise Huard – BRUG meeting 27/08/2009
 
http://www.slideshare.net/estraier/introduction-to-tokyo-products?src=embed
FAST 0.7s to store 10 6  in hash table 1.6s to store 10 6  in Btree table
Tokyo Cabinet <ul><li>key-value database </li></ul><ul><li>API for Perl, Java, Lua and, yes, Ruby </li></ul><ul><li>high c...
Tokyo Cabinet <ul><li>Hash Database </li></ul><ul><li>Binary tree database: can be ordered, and retrieved by value or by r...
Ruby <ul><li>Ruby API </li></ul><ul><li>http://tokyocabinet.sourceforge.net/index.html </li></ul><ul><li>Rufus-Tokyo </li>...
Tokyo Tyrant <ul><li>network interface Tokyo Cabinet </li></ul><ul><li>start server locally </li></ul><ul><li>ttserver -po...
Tokyo Tyrant <ul><li>remote access (duh) </li></ul><ul><li>but also: </li></ul><ul><li>remote backup and recovery </li></u...
Tokyo Dystopia <ul><li>Full-text search.  According to docs </li></ul><ul><li>High search performance </li></ul><ul><li>Ph...
http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/
<ul><li>comparison with traditional database would be interesting </li></ul><ul><li>Challenge: think beyond </li></ul><ul>...
<ul><li>Cool new toy ! </li></ul>
<ul><li>http://tokyocabinet.sourceforge.net/index.html </li></ul><ul><li>http://www.igvita.com/2009/02/13/tokyo-cabinet-be...
Upcoming SlideShare
Loading in …5
×

Tokyo Cabinet

2,471 views
2,321 views

Published on

brief presentation of tokyo cabinet to the Belgian Ruby User group

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,471
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
35
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Tokyo Cabinet

  1. 1. Tokyo Cabinet Elise Huard – BRUG meeting 27/08/2009
  2. 3. http://www.slideshare.net/estraier/introduction-to-tokyo-products?src=embed
  3. 4. FAST 0.7s to store 10 6 in hash table 1.6s to store 10 6 in Btree table
  4. 5. Tokyo Cabinet <ul><li>key-value database </li></ul><ul><li>API for Perl, Java, Lua and, yes, Ruby </li></ul><ul><li>high concurrency </li></ul><ul><li>high scalability </li></ul><ul><li>Cursors, Transactions </li></ul>
  5. 6. Tokyo Cabinet <ul><li>Hash Database </li></ul><ul><li>Binary tree database: can be ordered, and retrieved by value or by range. </li></ul><ul><li>fixed-length database: like an array </li></ul><ul><li>table database: schema-less (like CouchDB) </li></ul>
  6. 7. Ruby <ul><li>Ruby API </li></ul><ul><li>http://tokyocabinet.sourceforge.net/index.html </li></ul><ul><li>Rufus-Tokyo </li></ul><ul><li>http://github.com/jmettraux/rufus-tokyo/tree/master </li></ul><ul><li>Miyazakiresistance (ActiveRecord-like) </li></ul><ul><li>http://github.com/tsukasaoishi/miyazakiresistance/tree/master </li></ul><ul><li>dm-tokyo-cabinet-adapter (Datamapper) </li></ul><ul><li>http://github.com/makoto/dm-tokyo-cabinet-adapter/tree/master </li></ul>
  7. 8. Tokyo Tyrant <ul><li>network interface Tokyo Cabinet </li></ul><ul><li>start server locally </li></ul><ul><li>ttserver -port 45001 data.tch </li></ul><ul><li>Access remotely </li></ul><ul><li>Speaks its own protocol, memcached or HTTP (restful) </li></ul><ul><li>Linux, FreeBSD, Mac OS X, Solaris only </li></ul>
  8. 9. Tokyo Tyrant <ul><li>remote access (duh) </li></ul><ul><li>but also: </li></ul><ul><li>remote backup and recovery </li></ul><ul><li>replication (master-slave) </li></ul><ul><li>tuned to the type of db you're using </li></ul><ul><li>Lua extension to the database (server side scripts that add functionality) </li></ul>
  9. 10. Tokyo Dystopia <ul><li>Full-text search. According to docs </li></ul><ul><li>High search performance </li></ul><ul><li>Phrase matching, prefix matching, suffix matching, token matching </li></ul><ul><li>Unicode </li></ul><ul><li>Ruby: rufus-tokyo </li></ul>
  10. 11. http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/
  11. 12. <ul><li>comparison with traditional database would be interesting </li></ul><ul><li>Challenge: think beyond </li></ul><ul><li>Speed and extensibility ! </li></ul>Concluding
  12. 13. <ul><li>Cool new toy ! </li></ul>
  13. 14. <ul><li>http://tokyocabinet.sourceforge.net/index.html </li></ul><ul><li>http://www.igvita.com/2009/02/13/tokyo-cabinet-beyond-key-value-store/ </li></ul><ul><li>http://www.igvita.com/2009/07/13/extending-tokyo-cabinet-db-with-lua/ </li></ul><ul><li>http://tokyocabinet.sourceforge.net/tyrantdoc/ </li></ul><ul><li>http://github.com/jmettraux/rufus-tokyo/tree/master </li></ul><ul><li>http://github.com/tsukasaoishi/miyazakiresistance/tree/master </li></ul><ul><li>http://github.com/makoto/dm-tokyo-cabinet-adapter/tree/master </li></ul>

×