従来型のRDBMSではなく代替技術へ移行か
クラウド向けデータベースの選択肢
2008/09/22
「大抵の開発者はリレーショナルデータベース管理システム(RDBMS)の扱いに慣れているが、それをクラウド内で利用する可能性は低い」――クラウドコンピューティングの専門家はこう指摘し、さまざまなクラウドコンピューティング方式の利点と欠点を示した。
10genの共同創業者で同社の技術担当副社長を務めるガイアー・マグナッソン氏は、ニューヨークで開催された「Web 2.0 Expo」で講演を行い、「RDBMSは必要なものだが、クラウドの中ではそうではない」と述べた。
しかしオブジェクト/リレーショナルマッピング(O/Rマッピング)は、オブジェクト指向言語とリレーショナルシステムに格納されたデータとの間のインピーダンスミスマッチを回避するための1つの方法であるという。「O/Rマッピングは、RDBMSのパワーとODBMS(オブジェクトデータベース管理システム)のプログラミングの簡素性を結合するものだ」とマグナッソン氏は語り、Java、Python、Ruby、.NET、Groovyでは O/Rマッピングがサポートされていると指摘した。「O/Rマッピングはあらゆる環境で可能だ」と同氏。
マグナッソン氏の講演のタイトルは、「The Sequel to SQL: Why You Won't Find Your RDBMS in the Clouds」(SQLの続編:RDBMSがクラウドに進出しないのはなぜか)。
マグナッソン氏は、クラウドを「ローカライズされていない、あるいは匿名のコンピューティングサービスまたはリソース」と定義し、クラウドコンピューティングの手法のいくつかのタイプを列挙した。その1つが、Salesforce.comに代表されるSaaS方式である。もう1つの手法は、10genやGoogle App Engineなどが採用しているPaaS(Platform as a Service)方式。そしてHaaS(Hardware as a Service)という方式を採用しているのが、AmazonのElastic Compute Cloud(EC2)だという。
クラウドが一般化したのは、クラウドコンピューティングがさまざまなメリットや経費節減効果をもたらすからである。例えば、初期投資や運用コストの節減、そして可用性とアクセス性の改善による顧客サービスの向上などである。しかし落とし穴もあるという。「データという視点から見れば、データの複製と配布を行う必要がある」とマグナッソン氏は指摘する。大規模なデータセットの場合、データを分割する必要もあるという。
HaaSの概念を拡張するものとして、マグナッソン氏は「EC2上での皿回し」という方式について説明した。これは、MySQLに対して複数のVM(仮想マシン)を動作させるという手法で、1つがマスターになり、多数のVMがスレーブになる。マスターがダウンした場合でも、残りのスレーブから新しいマスターを作成することができる。「しかし私の考えでは、これはクラウドコンピューティングではない。実際には、クラスタリングを行っているのだ」と同氏は話す。
さらにマグナッソン氏は、グーグルがApp Engineを通じて提供している「Bigtable」について論じた。Bigtableは分散型ストレージシステムで、非常に巨大なサイズ(例えば、数千台のコモディティサーバに分散した何ペタバイトものデータ)に拡張するよう設計された構造型データを管理する。Bigtableは、エンティティと呼ばれるデータオブジェクトを格納する大規模ストレージをサポートする。「しかしBigtableでは、すべてのクエリに対してインデックスが必要とされるほか、フェッチリクエストが最大1000個のエンティティに制限されるといった制約条件もある」と同氏は指摘する。
マグナッソン氏によると、Amazonの「SimpleDB」はテーブル型のデータストアである。「これはS3(Amazon Simple Storage Service)用のメタデータストアとして用意されたものであるようだ」と同氏は話す。SimpleDBは自動インデックス作成をサポートするため、データの一貫性が保たれるが、ドメイン間のジョインには対応せず、クエリは最大250項目に制限され、あらゆるものがストリングとして扱われるという。
一方、10genの「Mongo」は、10genプラットフォーム用のデータベースである。10genでは、動的で拡張性の高いミッションクリティカルなWebサイト/アプリケーションを素早く容易に構築することを可能にする新しいPaaS技術を開発中だ。10genソフトウェアスタックは、クラウド環境内で運用するために作成された新しいツールスタック(データベース、グリッド管理、アプリケーションサーバ)を提供するという点でGoogle App Engineと似ている。
マグナッソン氏によると、Mongoはオブジェクト/ドキュメントストアだという。「これは、バイナリJSON(JavaScript Object Notation)のようなものだ」と同氏は話す。Mongoはクラウドを対象とした動的言語型ODBMSである。「言語バインディング機能により、開発者は自分の好きな言語を利用することができる」と同氏は話す。
もう1つのクラウドコンピューティング方式が「AppJet」で、これは10genの方式に近いという。「JavaScriptベースのアプリケーションサーバをクラウドに置いたようなものだ」と同氏は説明する。
各手法の概要説明の結論として、マグナッソン氏は「どれもリレーショナル方式を採用しておらず、データはクラスタ方式で扱われている」と述べた。
さらにマグナッソン氏は、そのほかの「注目すべき技術」として、サン・マイクロシステムズのMySQL部門の「Drizzle」技術などを紹介した。DrizzleはクラウドとWeb用の軽量型SQLデータベースである。「DrizzleはMySQLから発展したもので、リレーショナル型である。MySQLデータベースから派生し、クラウドとネットワークアプリケーション用に最適化されている」と同氏は語る。
マグナッソン氏によると、もう1つの注目技術が「CouchDB」である。CouchDBは Apache Software Foundationが開発したドキュメント指向型データベースで、Erlangというプログラミング言語で書かれている。また、分散ファイルシステムと MapReduceエンジンを組み合わせた「Hadoop」という技術もあるという。
このように数多くのオプションと広大なクラウド環境が存在するため、「プログラミング手法も変わるだろう。これはとても楽しい状況になると思う」(マグナッソン氏)
Copyright(c) eWEEK USA 2002, All rights reserved.
情報をお寄せください:
- 診断ツールでデータベースの健全性を保つ (2010/3/5)
DBをセキュアに保つには、日々のチェックが重要。診断ツールを運用に組み込むことが、情報漏えい対策の第一歩です - トムが説く、エンジニアがしてはならないこと (2010/3/2)
Oracleエンジンそのものをデザインする男、トム・カイト。カリスマエンジニアが説明する、陥りやすい「ぼくたちの失敗」とは - “スコット”といえばなんと答える? (2010/2/22)
ツーといえばカー、スコットといえばもちろん! そんな根っからのDB人間チェックや週末の勉強会など、2月もDB漬けでした - データモデリングは「できるところ」から始めよう (2010/2/15)
おびただしい数の業務フローで途方に暮れる前に「できるところ」を探そう。ゼロから始めるモデリング、その心得と技術をまとめます
|
|
スポンサーからのお知らせ
- - PR -
| 仮想環境の構築とデータ保護の特効薬?! 実績と信頼性の高いパッケージで安心運用 New! |
| 仮想環境のバックアップもこれまでどおり 「まるごと取ってまるごと戻す」簡単運用 |
| おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |
| 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜Java編〜
| ◆ | 上司や部下、部署内メンバーとの情報共有 を“ガラッ”と変えるコラボツールとは? New! |
| ◆ | おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| ◆ | 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| ◆ | Twitterのアカウントはなぜ突破された? メールによる新手の攻撃手法とその対策 |

| ◆ | もう仮想化のお試しフェイズは終わりだ! Hyper-V 2.0が基幹システムも仮想化 |
| ◆ | 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| ◆ | クライアント企業から求められる人材 ⇒IT技術と経営戦略を併せ持つ「戦略家」 |

| ◆ | .NET編集長が実践する「技術情報検索術」 サンプル・コードを簡単に探す“技”は? |
| ◆ | 業務効率と情報セキュリティ対策を両立! 手間なく確実に機密情報を守る方法とは? |
| ◆ | 直属上司が海外にいるのエンジニアに見る 【実例】場所に捉われないワークスタイル |

| ◆ | 「仮想化工房」のマイスターが選んだのは VMware、Hyper-V、そしてVirtageだった! |
| ◆ | 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |

| ◆ | 【CTC事例】約30の基幹システムを統合! 膨大なバッジジョブを制御した方法は? |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |
| ◆ | その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |







