クラウド時代のデータベース新潮流

変化するデータベースクラウド時代のデータべース新潮流(4/4 ページ)

» 2009年10月05日 08時00分 公開
[谷川耕一,ITmedia]
前のページへ 1|2|3|4       

クラウドではKey-Valueデータベースも適材適所で活用する

 とはいえ、クラウドだからと言って、すべてにおいて高機能、高性能なデータベースを利用しなければならないわけではない。Amazon EC2の上で簡単なアプリケーションを急ぎ開発しテストしたい、小規模なユーザーを対象にWebアプリケーションを安価に提供したいといった場合には、MySQLなどのオープンソースのデータベースを選んだほうがコスト効率は高い。

 また、膨大なアクセスは想定されるが更新頻度はそれほど高くなく、シビアなトランザクションも発生しないのならば、Key-Valueデータベースを選択する手もある。Key-Valueデータベースは、クラウドに最適なデータベースとしてここ最近頓に脚光を浴びているものだ。

 Key-Valueデータベースでは、任意の一意のバイト列をキーにして、それに対し1つの値を保存するデータベースのことだ。キーと値の組合せというシンプルな構造であり、それを通常はメモリ上に展開し利用するのでアクセスが容易で極めて高速に処理できる。

 さらに、このシンプルな仕組みを数多くのサーバに分散させて利用できるようにした分散Key―Valueデータベースは、高可用性、負荷分散、分散化によるコスト削減などの特徴を持っている。すでにこの分散Key-Valueデータベースとしては、Amazonの「SimpleDB」、Windows Azureの「Azure Storage Services」、Googleの「Bigtable」などがあり、日本でもmixiの「Tokyo Tyrant」がありこちらは極めて高速な処理ができる分散Key-Valueデータベースとしても有名だ。

 Key-Valueデータベースの多くはオープンソースか、あるいは商用のリレーショナルデータベースに比べて極めて安価なものが多い。高速処理が可能で安価なため、クラウド時代にはKey-Valueデータベースが本命であり、リレーショナルデータベースに取って代わるという考えもあるようだ。しかしながら、現実はそう簡単にはいかない。

 リレーショナルデータベースでは、データ構造そのものに意味を持たせることができ、複雑な処理もSQL言語を用い容易に実現できる。何よりも、これまでのアプリケーションの莫大な蓄積があるので、既存の会計システムや販売管理システムなどを、手間をかけKey-Valueデータベースで作り替えることにはならないはずだ。つまり、トランザクション処理を行うシステムや、既存アプリケーションのクラウド化といった場合には、いままで通りリレーショナルデータベースが利用されることになる。

 とはいえ、まったく新規にクラウド上でアプリケーションを開発するのならば、Key-Valueデータベースは無視できない。ちなみに、Oracleには、Oracle Coherence、Oracle Berkeley DBというKey-Value型のデータベースもある。これらをKey-Valueデータベースとして単独での利用も可能だし、その圧倒的な処理性能を活用するためにキャッシュ的な機能としてリレーショナルデータベースと組み合わせて活用する方法もある。ベンダー各社も、今後はKey-Value型のデータベースにも注力してくることが予測される。

 構築するアプリケーションに最適なデータベースを適宜選択することで、より高性能でコスト効率のよいクラウドサービスを展開できるはずだ。もし今後クラウドコンピューティングの活用を視野に入れているのならば、リレーショナルデータベースのクラウド向け最新機能のチェックはもちろん、新たな分散Key-Valueデータベースの動向などにも十分に注意を払っておく必要があるだろう。

企業向け情報を集約した「ITmedia エンタープライズ」も併せてチェック

前のページへ 1|2|3|4       

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ