イネーブラ型NoSQLのまとめ(Memcached、Redis、Scalaris、Tokyo Cabinet/Tyrant編):知らないなんて言えないNoSQLまとめ(2)(3/3 ページ)
「あぁ、知ってるよ。アレね」と言っておきたいNoSQLプロダクトの特徴をざっと紹介。今回はオンメモリもオンディスクもひっくるめて「イネーブラ型」のメジャーどころを紹介していく。
オンディスクのイネーブラ型KVS
ミクシィが開発したTokyo Cabinet/Tyrant5
Tokyo Cabinet/Tyrant(*12)は日本のミクシィが開発しました。このシステムは、バックエンドサーバのTokyo Cabinetと、リモートアクセス用のクライアントライブラリTokyo Tyrantで構成されています。
拡張性はないが強い整合性とトランザクションを提供 Tokyo Cabinet/Tyrantは、単体のサーバでの利用を前提としています。分散型のようにデータを自動で分割し水平拡張する機能を持たないため、ノードを追加したいときは、アプリケーション側などで対応する必要があります。また、障害復旧は手動で行うことになります。
データを複数のサーバに分割・複製しないので、「強い整合性」を提供します。排他制御も可能であり、ACIDトランザクションをサポートしています。
ディスクに保存しデータを永続化 Tokyo Cabinet/Tyrantを使うシステムでは、性能向上のために、先述のオンメモリ型のMemcachedが併用されます。Tokyo Cabinet/TyrantはMemcachedプロトコルをサポートしており、メモリ上のデータを定期的にディスクにフラッシュすることで、データを永続化できます。
メモリベースのMemcachedと変わらぬ高性能 Tokyo Cabinet/Tyrantは、データをディスクに格納しながらも、オンメモリ型のMemcachedに近い応答性能が得られるという点で高い評価を得ています(*13)。図3のように、MemcachedとMySQLの組み合わせよりも性能に優れると評価されています。ただし、いったんデータがメモリに収まらなくなると、性能が大きく低下するという特性があるようです。
*12 Tokyo Cabinet/Tyrant http://fallabs.com/tokyocabinet/。現在は、このプロダクトの後継として、Kyoto Cabinet/Tycoonの開発が行われています。
*13 パフォーマンス評価 http://www.mysqlperformanceblog.com/2009/10/19/mysql_Memcached_tyrant_part3/を参照。
初出情報
本連載で抜粋・紹介している原稿の初出は下記書籍です。本連載では詳述していないNoSQLの基本的な考え方、アーキテクチャの詳細などは、書籍でご確認ください。
『NOSQLの基礎知識』
- 【著】 本橋信也、河野達也、鶴見利章
- 【監修】太田洋
- 【発行】リックテレコム
- 【ISBN】978-4-89797-887-1
本書はクラウディアン(旧ジェミナイ・モバイル・テクノロジーズ)の技術者らが監修および執筆を行っています。同社は、国産NOSQL「HIBARI」を開発、その後、Cassandraに自社の「HyperStore」を実装したクラウドストレージ用パッケージソフトウェア「Cloudian」を開発して、現在商用提供を行っているITベンチャー企業です。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- S3の「エコシステム」をフル活用:日本発、S3互換クラウドストレージ構築パッケージ「Cloudian」
S3 API互換で、サービス開発向けの独自機能を多数用意したクラウドストレージ構築パッケージ「Cloudian」。大手での採用事例をフックにグローバル展開を目指す - NEWSニフティクラウドストレージが採用したパッケージ製品 Gemini
ニフティが9月に正式公開した「ニフティクラウドストレージ」は、Amazon S3準拠のAPIをベースにしたマルチテナント型クラウドストレージを採用している。