TokyoCabinet/TokyoTyrantを2日いじってみたあとのざっくりすぎる雑感
- April 2nd, 2010
- Posted in 開発ツール・技術
- Write comment

まだちょっとわかっていないところがありますが、ざざっとTokyoCabinet/TokyoTyrantの感想をまとめてみますよ!多分突っ込みどころ満載です!(違うところがあったら教えてくだしあ)
でも技術ってさわってみてすぐの情報が意外となかったりしますよね。間違いを恐れてのことだと思いますが、今回は勇気をもって自分の無知を晒してみますよ!
では早速!
- なんで使うの?
- TokyoCabinetとTokyoTyrantって何が違うの?
- PHPから使うには?
- インストール手順は?
- なんかいろいろデータ型があるけど?
- MySQLにできてTokyoTyrantに出来ないのは?
- MySQLから移行する人に一言
- バックアップとかは?
- 気を付ける点は?
- 2日使ってみて好きなところは?
- 逆に面倒なところは?
- 利用のイメージをざっくりと
- その他のアドバイスは?
Key-Valueストアが流行りだから☆?というのもありますがw、何よりも速度が速いらしい。「MySQLはもう古い!」と某氏が言っていたのでw勉強のために踏み切ってみました。
イメージ的にはTokyoCabinetが本体、TokyoTyrantはそれをネットワークごしに扱うためのラッパー。あわせてインストールしておくといいよ!
いろいろあるけど、PECLで導入出来るphp-tyrantがよさげ。PHPネイティブの命令から直接使えるようになるので便利。命令の一覧は以下を参照。
昨日書いた!
» TokyoCabinet&TokyoTyrantをPHPから使えるようにするまでの作業ログ
MySQLから移行してWebサービス作りたいならテーブル型がおすすめ・・・かな。ちなみにテーブル型にするには起動する際のデータベースファイルの拡張子を変えるだけ。
TokyoTyrantにはTokyoTyrantTableクラスがあり、テーブルにように扱えるのがうれしい。でもできないことあり、JOINとかGROUP BYはできません。
Tableごとにデータベースわけると便利っす(つまりttserverをポートを変えて複数立ち上げる)。
基本的にはファイルなので、それをバックアップすればいいらしい。TokyoCabinetが提供するバックアップツールもあるらしいけどまだ調べていない・・・。
実運用する際はPortを閉じるのを忘れぬように・・・外部からさくっとアクセスできちゃうっぽい。実行権限とかユーザって概念がない。
create tableとかやらなくていいのが便利。イメージとしては連想配列作ってぶち込む感じ。
updateする際にはざっとデータを全部揃えてつっこまないといけないところ。ID指定して、ここだけupdateって出来ない。
連想配列つくって、putで突っ込んで、getQueryとaddCond、setOrderなんかをしたあとにsearchしてforeachで表示。
次のページは絶対ブックマークしておいたほうがいいかとw。
あとsetOrder文がPHPの公式ドキュメントにないのが謎すぎる!
ざっと感じたのはそんなところですかね・・・。多分「それ違うよ!」ってところもあるでしょうが、その場合は優しくコメント欄にてご指摘ください。
あとで気が向けばサンプルプログラムみたいなのをさらしてみようかな・・・。


No comments yet.