memcached互換のNoSQLデータベース「Membase」がオープンソースで登場
memcachedの開発者らが中心となって今年の3月に立ち上げた企業NorthScaleが、memcached互換のNoSQLデータベース「Membase」のオープンソースプロジェクト「membase.org」を6月23日に発表しました。
MembaseはWebアプリケーションのバックエンドに使われることを想定したキーバリュー型データストア。高速かつ高いスケーラビリティを目指したもの。
主な機能として、将来にわたってmemcachedとプロトコルの互換性を保証しつつ、ディスクへの永続性機能(データのディスクへの書き込み)、階層型データストア管理、データレプリケーション、稼働状態での設定変更とノード間のリバランシング機能なども備えると説明されています。
Membaseの特徴はmemcached互換とスケーラビリティ
MembaseのWebサイトの情報を基に、特徴を紹介しましょう。
動的なノードの追加
Membaseは複数のサーバ(ノード)によるクラスタ構成で運用できます。どのノードも同様に扱われ、クラスタへのノードの追加は、ノードを複製して「リバランス」ボタンを推すだけで自動的に行われます。
memcached互換
memcachedとの互換性は将来にわたって保証されており、memcached用のフロントエンドコードとそのまま連係して動作します。
メモリキャッシュと階層型データストア
データは可用性のため自動的にレプリケーションが行われます。また、データは高速なアクセスを実現するためメモリ上に自動的にキャッシュされたうえで、階層型ストレージに保存されます。階層型ストレージは、アクセスの多いデータが自動的に上位層にマイグレーションするようになっており、上位層のストレージにはSSDを、下位層にはHDDを用いることで全体として高速なストレージへのアクセスを実現します。
スケーラビリティ
ノードの追加や削除はシステムを停止することなく動的に行うことができ、システムの性能はノードの追加によりリニアに向上する高いスケーラビリティを実現します。
こうしてみるとMembaseの魅力は、これ1つでmemcachedとバックエンドデータベースの両方をまとめて管理運用できることでしょう。いままではmemcachedとMySQLなどメモリキャッシュシステムとデータベースの両方を用意し、それぞれの管理運用をしていかなくてはならなかったのが、Membaseに入れ替えることで自動的にメモリキャッシュ付きのスケーラブルなデータベースとしてシンプルに運用できるようになります。
しかもmemcached互換ですから、うまくすればプログラムを書き換えずにそのまま置き換えられるかもしれません。バックエンドがリレーショナルである必要がなく、memcachedを使っているアプリケーションならば十分検討に値するNoSQLデータベースのようです。
(追記、当初memcachedのスペルを間違えていました、訂正しました)
あわせて読みたい
「HTML5 Rocks」だけじゃない、ブラウザ各社のHTML5チュートリアルを集めました
≪前の記事
クラウドのベンチマーク2種。速いのはグーグルかAmazonか、Windows Azureか、セールスフォースか?