分散データベースに関する技術概要

2009年9月4日(金)
藤田 昭人

クラウド向けの分散データベースとアプリケーション

 スケーラビリティを重視する既存のクラウド・サービスでは、既存のRDBMSよりももっと単純化されたデータモデルをサポートするクラウド向けのデータベースを新たに開発しています。

 その具体例としては、例えばKey-Valueデータベースが紹介されています。Key-Valueデータベースは文字通り、データをKey-Valueの形で格納するデータベースで、Consistent Hashing(図3)を用いることにより、指定したKeyに対応するValueを高速に検索することができます。

 この種のデータベースは従来のRDBMSとは異なり単純な機能しかサポートしていません。前述のACIDセマンティックスは制限付きで、例えば同一のKeyに対する検索結果として異なるValueが返されたり、あるい格納されている全てのValueが返される場合があります。またテーブルの結合など、従来はデータベースに任せてきた機能もサポートされません。つまり従来のRDBMSとは異なる考え方に基づくデータベースなのです。

クラウドに適したアプリケーションとは

 このような理由からクラウド向けアプリケーションは、その環境で利用できるクラウド向けデータベースのセマンティックスに基づいて設計される必要があります。

 クラウド向けデータベースにもさまざまありますが、現時点でおおむね共通しているのは「トランザクション処理に耐えるほどのデータ一貫性の保証は期待できない」と言えることです。

 クラウド向けデータベースの具体的な事例の紹介は次回に譲りますが、トランザクション処理を行う必要のあるアプリケーションは、原則としてクラウドには適さないと言えるでしょう。

 一方、一般的なウェブ・アプリケーションのように、データベースをアプリケーション・コンテキストの格納場所としてのみ使うようなアプリケーションの場合は、クラウド本来のメリットを享受できます。該当する典型的な事例としては Google が提供する各種ウェブ・アプリケーションが挙げられるでしょう。

 トランザクション処理を伴うアプリケーションでは、全くクラウドは活用できないというわけではないと思います。ただし、この場合もクラウド環境特有の特性を踏まえて設計しなければなりません。クラウド環境でのアプリケーション構築手法は、今後クラウド・コンピューティングが解決しなければならない技術的課題の1つであることは確かです。

株式会社IIJイノベーションインスティテュート
2006年大阪市立大学創造都市研究科修士課程修了(社会人大学院)。2008年 IIJ Innovation Institute の第1回技術開発公募によりIIJ-IIに参画。以降、構造化オーバーレイ技術による大規模分散システムの研究開発を行い、クラウド・コンピューティング分野での事業化を推進している。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています