Google App EngineによるWebアプリケーションのスケールアップ:丸山先生レクチャーシリーズ 第2回リポート
丸山先生レクチャーシリーズ 2008-2009 第2回に登壇したグーグルの石原直樹氏と本多正明氏は、Googleが考えるクラウドのキー、Google App Engineについて講演を行った。
2008年12月16日に開催された「丸山先生レクチャーシリーズ 2008-2009 第2回」ではGoogleのクラウドプラットフォームであるGoogle App Engineを紹介するセッションも設けられた。Google自身が提供するWebアプリケーションのバックエンドシステムとして利用されているGoogle App Engineは、一般向けに無償公開されており、開発者登録を行うことで自分のWebアプリケーションをこのクラウドプラットフォーム上ですぐに稼働させることができる。
Webアプリケーションのスケールアップのためのクラウド
Google App Engineについて講演を行ったのは、グーグルのデベロッパー アドボケイトの石原直樹氏と、同社のソフトウェア・エンジニアの本多正明氏。両氏は「Google App Engine−Cloud Computingのキー」と題してデモを交えながらGoogle App Engineを紹介した。
石原氏は「Googleが考えるCloudはApp Engineがキーとなる」と語る。同氏は現在のWebアプリケーションの課題として、いわゆる“LAMP”(Linux、Apache、MySQL、PHP)といったソフトウェアスタックを用意する手間や、モニタリングやキャッシュといったプラットフォームサービスの準備、稼働状況の監視や運用管理といったさまざまな付随作業の負担が大きいことや、スケールする際にも人手による解決を要する点を指摘。一方、Google App Engineでは、背後にスケーラビリティを確保する仕組みが用意されているが、アプリケーション開発者や利用者はそれを意識する必要はないという点が特徴だと話す。
分散データストア
Google App Engineでは、分散データストアとして“Bigtable”を利用する。BigtableはKey-Value型データベースで、大量データ処理のために設計されたものだという。大量のデータを高速に処理することができる半面、従来型のRDB/SQLで実現できるような複雑な処理はサポートしていないが、クエリ文の文法はSQL風になっているなど、開発者に配慮されたインタフェースが提供されている。
Bigtableの格納されたデータは、“分割された、ソート済みの巨大な配列”としてアクセスできる。スケーラブルなアーキテクチャであり、その能力は「多くのGoogleサービスで実証済み」(本多氏)という点が利用者にとっての魅力となる。
アプリケーション開発
Google App Engineでは、現在は開発言語としてPythonをサポートしている。主要なライブラリもサポートされており、クラウド環境でのアプリケーション開発に必要とされる機能は一通りそろっているという。開発者向けのインタフェースとしてWebベースの管理画面が提供されており、ここから自作のPythonプログラムを“アップロード”するだけで、Google App Engineを利用してWebアプリケーションを稼働させることができる。Pythonがスクリプト言語であることから、アップロードされたアプリケーションの変更も容易で、変更が即座に反映されるなど、Webアプリケーション実行環境として、ローカルでの実行とほぼ変わらない使い勝手を実現していることもデモを通じて紹介された。
なお、現時点ではGoogle App Engineの利用制限として「開発者ごとのアプリケーション数:10」「アプリケーションごとのストレージ:500Mバイト」「アプリケーションごとのファイル数:1000」「ファイルのサイズ:1Mバイト」「10Gバイト/日、650K HTTP/日」といった制限が設定されているという。
そんなGoogle App Engineの今後のロードマップとしては、「巨大なファイルを保存、利用するサービス」「巨大なデータをデータストアにインポート/エクスポートするためのツール」「課金システム:開発者の必要なリソースに応じて課金」「Python以外の言語のサポート」「可用性モニタリングサイト」などの実現が計画されているという。
ほかの講演とはやや趣が異なり、質問者にGoogle App Engineのロゴ付きTシャツがプレゼントされるなど、開発者会議のような雰囲気で進行した講演となったが、Webアプリケーションのスケーラビリティ確保に悩む開発者にとっては直接的な解決策が示されたのではないだろうか。
関連記事
- “Windows Azure”はこう読み解け
先月開催された「丸山先生レクチャーシリーズ2008-2009」第2回では、エンタープライズITでクラウドをどう活用していくか、という課題についてさまざまな切り口からの講演が行なわれた。ここでは、丸山氏の講演内容を簡単にまとめた。 - クラウドとグリッドの“微妙な”関係
クラウドとグリッドの境界が分からない方もいるかもしれない。あるいは、クラウドとグリッドはまったくの別物と考える方もいるだろう。クラウドの出現をグリッドとの関連の中に位置付け直すよい機会を富士通/国立情報学研究所OGFボードメンバ、OGSA-WG共同議長の岸本光弘氏が与えてくれた。 - クラウドサービス提供ベンダーの視点からみたクラウドの現状
「クラウド時代の到来を受けて、クラウドとどう向き合うべきか」――クラウド専業のベンダーとしてアプリケーションレイヤで存在感を放つセールスフォース・ドットコムの岡本充洋氏は、開発者にむけた行動指針を示した。 - クラウド時代の到来とはどういうことなのか
クラウド時代が到来しようとしている。しかし、それは一体何を意味するのだろうか。本年度の「丸山先生レクチャーシリーズ」を貫くこの大きな問題を、丸山不二夫氏がITの歴史的発展の流れの中に位置付けて読み解いた。 - 丸山不二夫が語る「クラウド時代にわたしたちがすべきこと」
クラウドコンピューティングがようやく普及期に入ろうとしている。これまでエンタープライズシステムを長く見続けてきた丸山不二夫氏が、自身が開講する「丸レクセミナー」のメインテーマにクラウドを据えた。ビジネスマンがこぞって注目する丸山氏にクラウドについて聞いた。 - グリッド技術の普及に向け2つの団体が統合へ
グリッドコンピューティングの普及と標準化を目指すEGAとOGFという2つの団体が統合する。 - 「プライベート」クラウドコンピューティングが人気上昇中
「プライベート」クラウドコンピューティングは、ファイアウォールの内側に置かれた小規模なクラウド型ITシステムを通じてサービスを提供するものだ。メインストリームバージョンと異なるのは、内輪のネットワークで完結するという点だ。 - クラウド向けデータベースの選択肢
クラウドコンピューティングはリレーショナルデータベース管理システム(RDBMS)モデルを崩壊寸前に追い込んでいる――クラウドコンピューティング専門家のガイアー・マグナッソン氏はこう指摘する。
関連リンク
Copyright © ITmedia, Inc. All Rights Reserved.