2010年9月3日、key-valueストア「Redis」のバージョン2.0系となる2.0.0がリリースされました。Redisは昨今流行りのNoSQLデータベースに分類されるもので、memcachedなどと同様にキーとそれに対する値をメモリ上に保持しますが、値は文字列だけでなくListやSetなどのデータ型もサポートしていたり、終了させてもデータが消えないよう、非同期でディスク書き出しが行えるなど永続性を持っていることが特徴です。今回のバージョンアップにより主に変更された点は以下のとおりです。
- 複数のコマンドをアトミックに実行できる「MULTI/EXEC」
- 複数キーから値を取得する「BLPOP/BRPOP」コマンドの追加
- 非同期メッセージング(PUBLISH/SUBSCRIBE)の導入
- 1つのキー上に複数のkey/valueを持てるハッシュデータ型の追加
- 実メモリ以上のデータを扱える仮想メモリのサポート
RedisはCで書かれているため非常に高速に動作します。Xeon 2.5GHzのLinuxマシンで50クライアントを並列に動かしたところ、毎秒10万リクエストもさばくことができたそうです。レプリケーションによるスケーリングも行えるため、いままで簡易にMySQL+memcachedの組み合わせで構成を考えていた人にとっては検討する価値のあるプロダクトと言えそうです。公式サイトにはPHPでTwitterライクなアプリケーションを作るサンプルも載っています。
URL:http://code.google.com/p/redis/