結局、RIAはどれを使うべきなのか?
連載インデックスへ
検証特集:クラウドの“クライアント”としてRIAを試す(1)

6つの主要クラウドとRIAの現状を総ざらい


クラスメソッド株式会社
福田 寅成
2009/7/10

昨今関心が高まる一方のクラウドだが、クラウドの“クライアント”についてはあまり取り上げられないのが現状だ。本連載では、同じく未知の可能性を秘めるRIAをクライアントにして、サンプルを基にクラウドとの連携アプリケーションを検証していく

クラウドの“クライアント”について考えていますか?

 昨今「クラウド・コンピューティング」(以下、クラウド)に対する関心が高まっています。「アプリケーション開発のさまざまな面でパラダイムシフトが起こる」といわれており、次第に多くの技術者に理解されるようになりました。その半面、実用について考えると、まだ若い技術であるということもあって特に“業務”アプリケーションへの適用は非常に限定的なものになっています。

 そしてクラウドに関しての言及は、インフラからデータベース、分散並列処理、クラウド上にデプロイするサーバアプリケーション(クラウドアプリケーション)に関しての技術的なことが多いのが現状です。

 クラウドに対する“クライアント”はもちろん何でもよいのですが、本連載ではクラウドのクライアントとしてRIA(Rich Internet Application)/リッチクライアントを提案し、クラウドのクライアントについて検証していきたいと思います。

 クラウドやRIA双方にいえるのは、まだ世の中的にはアーリーアダプターのステージであり、大多数の人が「クラウドなら安心」「RIAなら安心」というステージには到達していないということです。その分、技術的/ビジネス的にはチャレンジしがいのある領域が広がっています。

 さらに、それらを組み合わせてクラウド+RIA=「クラウドRIA」として利用しているケースは皆無に近い状態です。

2009年夏のクラウドの状況

 2009年7月現在、クラウド5大陣営といえるセールスフォース・ドットコム、アマゾン、グーグル、マイクロソフト、IBMがしのぎを削っており、ここにさらにいくつかの陣営が参戦し、クラウド業界は活況を呈しています。

 すでに米国では、日本より2年早くビジネスが展開/一般化しているといわれ、クラウド上で動作するミドルウェア(「クラウドミドルウェア」とでもいいましょうか)でビジネスを行うベンチャー企業が多数登場しています。

 日本国内でもタイトルに「クラウド」を冠するセミナーは常に満員御礼の状態のようです。少なくとも「今後どうやってビジネスにつなげていけばいいのか」「その際に技術的な問題は何なのか」といったことに関して多くの企業が模索し始めています。

2009年夏のRIAの状況

 2009年7月現在、クラウドにも利用されることが予想されるRIAの3大陣営といえるであろうAdobe AIR/FlexSilverlightAjax/JavaScript系がしのぎを削っています。アドビ システムズ、マイクロソフトからはSDKや各種開発ツールの最新バージョンがまもなく登場します。

 RIAに関しては、クラウド同様に「業務アプリケーションに利用できるのか?」という部分での論議が活発で、大規模な業務案件でのRIA適用が公になるにつれ、RIAの業務アプリケーションでの採用が拡大しています。

 最近のRIAの概況は、筆者の一連のRIA記事を参照してください。

未曽有の不況を打開する救世主? RIAとは
結局、RIAはどれを使うべきなのか?(1) 100年に一度の不況がやって来た。不況のときに起きる技術革新の可能性の1つとして、RIAとは何か、なぜ必要なのかを説明しよう
リッチクライアント & 帳票」フ ォーラム 2009/1/22
“不況”時代を切り拓く、7つのRIA技術の基礎知識
結局、RIAはどれを使うべきなのか?(2)  中立的な立場でRIA技術を比べるために、それぞれの基本的な情報と、それらを学ぶ際に最初に注意すべきことを説明しよう
リッチクライアント & 帳票」フ ォーラム 2009/2/4

 本稿では、先ほどの5大クラウド陣営に加え、サン・マイクロシステムズを加え、6つクラウドサービスの簡単な特徴と、RIAとの関連を見ていきます。

今回紹介する、主なクラウド技術

クラウドの老舗、Amazon Web Services
Java版で一気に業務系よりに、Google App Engine
.NETアプリがそのままクラウドに、Windows Azure
業務系SaaSとしての実績が多い、Force.com
プライベート・クラウドを構築する、IBM Smart Business
RIAクライアントとの親和性が高そうな、Sun Cloud

 クラウドにあまり詳しくないという読者は、次項でおさらいしてから各クラウドの紹介をご覧ください。

RIA開発者のための、そもそも「クラウド」とは?

 地球上の“どこか”にあり、CPUやハードディスク、OS、ミドルウェアから開発環境まで、さまざまなサービスが“抽象化”されているものを「クラウド」といいます。クラウドでは、CPUやハードディスクからIPアドレスに至るまで、われわれが利用可能な“リソース”が特に抽象化されており、実際にどのような“実体”を利用しているかは分かりません。ただ、そういったことを開発者が分からなくても「最終的に“つじつま”が合った(Eventually Consistent)」結果を従来同様に得られます。

 “抽象化”の特徴は、多くのクラウドがWebアプリケーション経由であらゆるタスクの管理が可能となっていることです。サーバの作成からコンフィグレーションまですべてのことがWeb経由で可能です。いままでのようにサーバにケーブルを配線したり、CDからOSをインストールしたりといったことが必要ありません。

 そもそも、サーバをサーバ室に持ち運んだり、サーバを置くためのサーバルームを作ったり、サーバの建物を建設する必要がありません。1000台サーバが必要な場合も新規サーバ作成テキストボックスに「1000」という数字を打ち込むだけです(実際には、そこまで簡単ではありませんが)。

クラウドにより4つに増えたアプリの開発形態

 また、クラウドは「新しく登場したアプリケーション開発形態の1つ」と見ることができます。いままでのアプリケーション開発の形態としては、クライアント単体で動作する「スタンドアロン型」と、クライアントとサーバが協調して動作する「C/S(クライアント・サーバ)型」の2者のみが存在しました。ここに、新たにクラウドというプレイヤーが新しく追加されたということです。

 これによりアプリケーション開発の形態は、以下のようなタイプが考えられるようになります。

  1. スタンドアロン型
  2. クライアント・サーバ型
    いわゆるC/S、従来型Webアプリケーション、従来型RIA
  3. クライアント・クラウド型
    C/C。クライアントとクラウドが直接やりとりするタイプ
  4. クライアント・サーバ・クラウド型
    C/S/C。従来型の構成の背後にクラウドを置き、ハイブリッドにそれぞれの良い点を利用するタイプ。クラウド利用の際に現在多く用いられる形態

 例えば、画像共有サイトの「SmugMug」はよく使われる5%のファイルを自社サーバ(高速アクセス)に、残り95%をAmazon S3(後述)のクラウドストレージに置いているそうです。これは、典型的なC/S/C型のアプリケーション構成であるといえます。

 このC/S/C型の最初のC(クライアント)の選択肢として今後、RIAが有力な候補になってくるものと考えます。

クラウドに関する予習

 クラウドに対してあまりなじみのない方は、少し古い情報もありますが、下記のリンクの@IT記事も読んでおいてください。

RIA開発者のための、クラウド用語

 そのほか、よく出てくる用語をいくつか列挙しておきます。

  • On-premise(オンプレミス、店舗の)
    ここでは自社サーバの「自社運用型」を表す。反意語はオンデマンド(On-demand)、または、クラウド。ちなみに、オンクラウド(On-cloud)は「至福の」などの意味になる
  • Elastic(イラスティック、ゴムの)
    伸縮自在な、融通の利く。Amazon系クラウドで頻出する用語で、クラウド内のサーバ構成を動的に自由自在にできるということを表す
  • KVS(Key-Value Store、Key-Value Storage)
    主要クラウドのほとんどのストレージに採用されており注目されているストレージ技術。KVSを巡っては利用時のアーキテクチャ含め技術的チャンレンジし甲斐のある新分野を形成しようとしている。実は、結構昔のレガシーなホスト向けデータ保存技術に似ているらしい

 KVSについて詳しく知りたい読者は、下記記事も読んでみてはいかがでしょうか。

 次ページからは、6つクラウドサービスの簡単な特徴と、RIAとの関連を見ていきます。

1-2-3

 INDEX
検証特集:クラウドの“クライアント”としてRIAを試す(1)
6つの主要クラウドとRIAの現状を総ざらい
Page1
クラウドの“クライアント”について考えていますか?
RIA開発者のための、そもそも「クラウド」とは?
  Page2
クラウドの老舗、Amazon Web Services
Java版で一気に業務系よりに、Google App Engine
.NETアプリがそのままクラウドに、Windows Azure
  Page3
業務系SaaSとしての実績が多い、Force.com
プライベート・クラウドを構築する、IBM Smart Business
RIAクライアントとの親和性が高そうな、Sun Cloud
まずは、Amazon S3+Flexアプリから



リッチクライアント&帳票 全記事一覧へ



HTML5 + UX フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

HTML5+UX 記事ランキング

本日 月間