BT

Moneta:Tokyo CabinetやMemcacheのようなKey-Valueストアへのインターフェイス

| 作者: Mirko Stocker フォローする 1 人のフォロワー , 翻訳者 編集部 フォローする 0 人のフォロワー 投稿日 2009年2月25日. 推定読書時間: 2 分 |

データの格納のことになると、リレーショナルデータベースが唯一のオプションである。実際の事例に基づいて、key-valueストアをちょっと見てみる価値 があるかもしれない。主に主要keyによって、データが格納されて、アクセスされる場合、key-valueストアはリレーショナルモデルよりも賢い選 択であるかもしれない。そこで、key-valueストアとはいったい何なのか?その名称は、plain-oldハッシュと非常に似ているように思われる が、概念上はそうである。

本格的なRDBMSと比較すると、key-valueストアはずっと単純であり、それが多くの競合する実装が利用可能である理由であると思われる。さまざ まなkey-valueストア向けの統一インターフェイスである、Tokyo CabinetおよびMonetaを見てみる。

Tokyo Cabinet(リンク)はCライブラリであり、非常に高速で空間効率の良いkey-valueストアを実装する。

データベースは、レコードを保持する単純なデータファイルであり、それぞれはkeyとvalueの組み合わせである。すべてのkeyとvalueは、可変 長のシリアルバイトである。バイナリデータおよび文字列は、keyおよびvalueとして使用可能である。データテーブルやデータタイプの概念はない。レ コードはハッシュテーブル、B+ treeまたは固定長の配列で構成される。

Rubyのバインディング(リンク)の他に、Perl、JavaおよびLua向けのAPIが利用可能である。

マシン全体でTokyo Cabinetを共有するために、Tokyo Tyrant(リンク)が並列およびリモート接続向けにサーバを提供している。Tokyo Cabinetに関する例や詳細については、Ilya Grigorik氏の紹介記事を参考にしてもよい(リンク)

key-valueストアを使用することを決めたが、特定の実装をまだ決めたくない場合、Monetaが重宝する(リンク)。それは「key/valueストア向け の統一インターフェイスを提供することを目的としている」。ちょうどRackがWebサーバに対しておこなうことと同様である。またYehuda Katz氏が説明するように(リンク)「key/valueストアに関してsugarを提供するライブラリ(たとえば、RailsおよびMerbのキャッシングサ ポート)は、バックエンドとしてMonetaを使用することができる」。

難しい設定など一切なしで、Monetaはファイルストア、memcacheストア、インメモリストア、ファイルシステムのxattrs、DataMapperの他に、前述のTokyo Cabinetを(「Tokyo CabinetおよびTokyo Tyrantへのruby-ffiベースのインターフェイスであるrufus-tokyo(リンク)」を通じて)サポートする。

Monetaについて詳しくは(リンク)、Yehuda氏のブログを参照するか、githubリポジトリ(リンク)を検討するとよい。

 

原文はこちらです:http://www.infoq.com/news/2009/02/moneta-tokyo-cabinet

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT