key-valueストアのうち、メモリーに保存する「memcached」を実際に導入して使ってみます。memcachedは、mixiやFacebook、Twitter、Flickr、YouTubeなど超メジャーサイトで使われているキー・バリュー型データストア(key-valueストア)です。Linuxのサーバーソフト(デーモン)として動き、ネットワークを介して他のクライアントからkeyとvalueをセットできます。
使い方は極めて簡単で、ネットを介して「set」コマンドでkeyとvalueを保存し、「get キー」コマンドでvalueを取り出します。PerlやPHPなどのスクリプト言語には、memcachedのライブラリモジュールが用意されており、プログラム内からも簡単に利用できます。こうしたインタフェース(プロトコル)は、kumofsなどの分散key-valueストアソフトの多くに採用されています。
memcachedのインストールは簡単です。Ubuntuの場合、
# apt-get install memcached
導入後、起動するには、rootではない一般ユーザーで、
$ memcached
では試しに、key-valueデータを格納してみましょう。通常のデーモンですからtelnetでポート番号を指定すれば、memcachedと会話できます(図1)。
次にPerlから読み取ってみましょう*2。図2のようなPerlのスクリプトを実行します。
$ ./test.pl
key=nikkei
100
telnetで格納したnikkeiのvalueが取り出せました。