Nesta/IO は memcached プロトコルに対応したキー・バリュー・ストアです。 memcached と違いデータはファイルとしてディスクに保存されるため、プログラムを終了しても消えることはありません。 データの有効期間を指定する expiration time にも対応しています。
Nesta/IO はキー・バリュー・ストアを実現するためのハッシュ・データベースを実装した nestalib と memcached プロトコルを処理するプログラム nestaio から構成されています。プログラムは C 言語で書かれています。
Nesta/IO は Linux, Mac OS/X, および Windows で動作します。
ライセンスは MIT License になります。
nestalib: nestalib-0.9.4.tar.gzUNIX 系 OS 上では以下のようにインストールします。
nestalib をインストールした後に nestaio をインストールします。
1. nestalib のインストール
デフォルトではライブラリが /usr/local/lib にヘッダーファイルが /usr/local/include/nestalib にインストールされます。
$ tar zxvf nestalib-0.9.4.tar.gz $ cd nestalib-0.9.4 $ ./configure $ make $ sudo make install
2. nestaio のインストール
$ tar zxvf nestaio-0.3.1.tar.gz $ cd nestaio-0.3.1 $ ./configure $ make
Windows では展開したディレクトリに Visual Studio C++ 2008 Express(無償版) のプロジェクトファイルがあるのでそれをお使いください。
【起動方法】
$ ./nestaio [-start] [-f conf.file]
【終了方法】
$ ./nestaio -stop [-f conf.file]
コンフィグレーションは nestaio を展開したディレクトリの conf/nestaio.conf を修正します。
conf/nestaio.conf の修正を反映させるにはプログラムを再起動する必要があります。
memcached と nestaio のベンチマークを参考値として掲載しておきます。
ベンチマークプログラムには mcb を利用させていただきました。
memcached のバージョンは 1.4.5 でメモリサイズを 100MB 割り当てました。
$ ./memcached -m 100
【評価マシン】
MacBook Pro (CPU:Intel Core 2 Duo 2.26GHz, Memory:2GB)
Mac OS X 10.6 Snow Leopard (64bits kernel)
【ベンチマーク内容】
・set:同時接続 100 でランダムなキーを生成し、データ長が約1,000バイトの set コマンドを1接続当たり 1,000回繰り返す。
・get:同時接続 100 でランダムなキーを生成し、get コマンドを1接続当たり 1,000回繰り返す。
|
Author: YAMAMOTO Naoki
Last modified: 2011/02/05