特集:Windows Azureインタビュー

現実はどうなの? クラウドとWindows Azure

デジタルアドバンテージ 一色 政彦
2009/07/08
Page1 Page2

Azure関連の記事

まだ知らない人のための最新Azure入門 - Build Insider

Azure TIPS - Build Insider

ここまで進化した、Azure Webサイトの世界観(2014年7月版) - Build Insider

連載:Windows Azureモバイルサービスで作る簡単スマートフォンアプリ - Build Insider

Microsoft Azureプレビュー・ポータルの機能とは? - Build Insider

特集:Windows Azureメディア・サービスを利用したストリーミング配信 - Build Insider

連載:Microsoft技術におけるアイデンティティ連携開発のいま - Build Insider

Vittorio Bertocci氏インタビュー: 開発者にとってのWindows Azure Active Directoryの役割と今後の展開 - Build Insider

その知識、ホントに正しい? Windowsにまつわる都市伝説(6):Microsoft Azureの秘密を探る[その1] - @IT

進化を続けるマイクロソフトのクラウド:Windows Azureの“いま”を知る - @IT

Azure - Build Insider

 多くの一般的な.NET開発者にとって、クラウド・コンピューティングやWindows Azureは、あまり実体の伴わない単なるかけ声のように感じられていたり、そこまで批判的ではなくても「何となく信頼できない」と感じていたりするのではないだろうか。「クラウド・コンピューティング」の世界観は魅力的に思えても、将来、本当にその世界がIT業界を席巻する様子や、その世界に自分が足を踏み入れる未来というのは、なかなか実感がわかない。そんな読者が大多数だろう。

 そこで.NET未来展望台コーナーでは、クラウド・コンピューティングやWindows Azureに関する不安や疑問を、マイクロソフトで「Windows Azure」「Azure Services Platform」「S+S(ソフトウェア+サービス)」を推進するデベロッパー&プラットフォーム統括本部の担当者3名にぶつけてみた。

  • 平野 和順 氏
  • 関田 文雄 氏
  • 砂金 信一郎 氏

 本稿は、このインタビューをまとめたものだ。それではさっそく、その内容に入っていこう(以下、敬称略)。

 単に「Azure」(アジュール)と記述したものは「Azure Services Platform」を指す。「アプリケーション」は「アプリ」と略す。

【関連情報】Azure開発のコンテスト

 マイクロソフトは現在、.NET言語やPHP言語で開発したWindows Azureクラウド・アプリケーションを申請できる「new CloudApp() 〜 Azure Services Platform Developer Challenge」というAzure開発のコンテストを開催中だ。ただし、応募期限が2009年6月1日(月)〜7月9日(木)となっており、間もなく終了する。ASP.NET WebアプリをWindows Azureに移し替えるだけであれば、すぐに移行できるケースもあるので、既存のWebアプリをお持ちの方は駆け込みで応募してみてはどうだろうか。

マイクロソフトにおけるクラウドとは?

―― マイクロソフトの戦略において、クラウド・コンピューティングはどういう位置付けなのでしょうか? Windows Azureの狙いは何でしょうか?

平野 マイクロソフトのクラウド・コンピューティング戦略は、.NET FrameworkやVisual Studioなど、これまで培ってきた開発プラットフォームの延長線上にあります。もちろんいろんな思いはありますが、一番の狙いはアプリを開発するデベロッパーが活躍できる領域を広げたいということです。

―― 「全員が全員、クラウド開発に移行していきましょう」というメッセージではないのですね?

マイクロソフト
デベロッパー&プラットフォーム統括本部
平野 和順 氏

平野 いまの時代は、クラウドだけではありません。小さなモバイル・デバイスから、カーナビ、PC、サーバ、企業内のWebサーバといったオンプレミスのクライアント・アプリも大事です。要は適材適所で、例えば、需要が増えるに従って大きくスケールさせたいアプリや、外部から大量のアクセスを受け付けたいアプリなどは、クラウドに移行するのが適していますし、その一方で企業内に置いておいた方がよいアプリもあります。このような適材適所を実現するためのアイデアが「S+S」であり、それを実現するためのプラットフォームが「Windows Azure」と「Azure Services Platform」です。これがWindows Azureの狙いです。

砂金 現場寄りのコメントをすると、マイクロソフト自身が「クラウド・コンピューティング万歳」といっているわけではなく、世の中がそちらの方に流れていると感じています。それを先導しているのは、グーグルやセールスフォース・ドットコム、アマゾン(以降、他社)ですが、「クラウド・コンピューティング万歳」を主張する人々がいうほど、クラウド・コンピューティングで何でもできるわけではありません。あらゆるアプリをクラウド上に持っていこうとするのは現実的ではありません。S+Sのほうが、より現実的なアプローチになると思います。

 「Google App Engineだと安い」という話を耳にした開発者や利用者から、「マイクロソフトはどうするのですか?」という質問を受けることがあります。確かに「グーグルさんがいわれていること」が実現できたら本当に素晴らしいですが、そこに到達するほどには、まだネットワーク環境や、利用者のマインド、法規制などが整っていないと思います。従って、当面はS+Sのように両方の良い面を使い分ける手法の方が現実的ではないでしょうか。

 もちろん将来的には、Web上ですべてのことができる世界が来るのかもしれません。ですが、いまは「Web上でできることだけをすればよい」と考えています。「すべての業務アプリをWebブラウザ上で実行すべき」という発想には、現時点でマイクロソフトは賛同しかねます。そういうクラウド・コンピューティングに対するマイクロソフト流の回答が、S+Sであり、Windows Azureです。

 ですので、実はマイクロソフトにとって、他社は直接的な競合相手ではありません。確かに実施していることの一部は競合していますが、マイクロソフトと他社では、その思想が「ねじれの位置」にあるといえます。

―― ということは、マイクロソフトはGoogle App Engine(以降、GAE)やAmazon EC2(以降、EC2)、Salesforce.comのForce.comをまったく意識していないのでしょうか?

砂金 いま述べたように、技術的に競合している部分もあるので、さすがに「まったく意識していない」というのはうそになります。実際に技術的な比較を行ってみると、「GAEにできて、Azureにできないこと」はあまり多くありません。逆に、「Azureなら楽にできて、GAEでは頑張らなければできないこと」は、特にエンタープライズ寄りの技術にたくさんあります。

 例えばAzureであれば、さまざまなデータの永続化手法や、データ・アクセス手法、認証、SOAのメッセージング交換などを、ある程度のところまでミドルウェアとして用意しています。しかもそれがクラウド・コンピューティング用に突貫工事でできたものではなく、オンプレミス上での実績の基に構築されたものであるという安心感があります。そういった点は、Azureと他社の技術的な違いであると認識しています。

―― お話は分かりますが、GAEはクラウドに特化しているがゆえに、よりシンプルな開発モデルになっています。例えばデータ・ストアの実装は、データ・モデルとなるエンティティをクラスとして記述するだけです。こういうのを知った開発者は、Windows Azure Storage(以降、WAS)での実装は難しいと感じることがあるようです。

砂金 GAEのそういった開発モデルに関しては、確かにシンプルなWebアプリを開発するのには向いているのかもしれません。しかしながら、日常業務に使えるレベルの「アプリケーション」を開発するためのプラットフォームとして設計されているのかという点には、個人的に疑問があります。

関田 先ほども平野が述べましたが、あくまでAzureの目的は.NET技術の延長線上にあるということです。マイクロソフトがAzureで実現したいのは、単純なWebサイトから、エンタープライズ向けの企業内システムの領域までと、非常に広範囲なWebアプリ形態をサポートできるクラウド環境です。このような環境を、最終的にどのようにして実現するかはまだ検討中です。

 その中で、PythonやRubyのような動的言語などによるシンプルなWebアプリの構築もサポートするという考え方もあり得ます。しかしそうなると、これまでの.NET開発環境とはまた違ったものを提案しなければならなりません。それが.NET開発者にとって本当に良いのかと考えると、そうではないと思います。やはり既存の資産やスキルを生かしたまま、一部としてクラウド・コンピューティングが採用できる環境を用意するというのが、マイクロソフトのクラウド・コンピューティングにおける基本的なスタンスです。

―― ということは、Azureのメイン・ユーザーは.NET開発者なのでしょうか?

マイクロソフト
デベロッパー&プラットフォーム統括本部
関田 文雄 氏

関田 現在の.NET開発者は、Azureにとっても非常に重要なお客さまです。ただし、インターネット上ではさまざまな開発テクノロジが利用されていますので、ほかの言語や開発技術を持っている方に使っていただくことも、今後のマイクロソフトには必要だと感じています。そのため、Azureのインターフェイスには、オープンな標準技術(例えばREST APIなど)を採用しています。

平野 C#やVB(Visual Basic)といった.NET言語以外の開発者として、Windows Azureでは、まずPHP開発者に対象を広げていきます。そのほか将来的には、Javaの開発者にもWindows Azureをきっかけとして.NET開発を知ってもらいたいという期待も、もちろんあります。

Windows Azureでの.NET技術以外の活用

―― 現在のWindows Azureでも、Javaを実行できると聞きましたが、本当でしょうか? 現実にJavaを使ったサンプル・アプリなどはあるのでしょうか?

砂金 マイクロソフトの社員であるSteve Marxが実際にWindows Azure上でJavaアプリを実行し、その方法とサンプル・プロジェクトをブログに投稿しています。JRE(Java実行環境)はWindowsコンポーネントなので、それと実行に必要なライブラリをWindows Azureアプリのパッケージに含めればJavaのプログラムも動作します。

 しかし、アプリ更新のたびにアップロードするパッケージにJREを含めるという手法はあまりスマートとはいえません。さらに、C#やVB言語で開発する場合、Visual Studioやライブラリなどでさまざまな支援が受けられるため、開発が容易になっていますが、Javaの場合はそれらの支援が受けられません。こういった点を考えると、Javaの既存資産を活用したいなどの特別な理由でもない限り、新しいアプリであえてJava言語を選択するメリットはいまのところありません。

―― なるほど。3月に米国で開催されたMIXというカンファレンスでは、PHP言語で開発されたオープンソース・ブログ・アプリケーションである「WordPress」のデモがありました。このサンプルはすでに利用できるのでしょうか?

砂金 デモで使われたのは、SQL Server版のWordPressです。このデモでは、SQL Serverの代わりに、次期バージョンのSQL Data Services(以降、SDS)が使われていました。実は、SDSへの接続とSQL Serverへの接続の違いは接続文字列だけで、開発方法も動作結果もまったく同じです。SQL Serverを使っているものであれば移行は非常に容易です。このSDSの開発者向けの公開リリースは8月ごろを予定しています。それまでは、WordPressを実際に使うことはできません。

関田 WordPressのようにWindowsサーバ上で動くPHPライブラリやアプリは多数ありますが、それらをWindows Azure上へ移行することも難しくありません。

―― オープンソースのWebアプリでは、データベースとしてSQL ServerよりもMySQLがよく使われています。MySQLの利用はできないのでしょうか?

砂金 現時点で、マイクロソフト自身からMySQLに積極対応する予定はありません。もちろんユーザー・グループなどの活動でMySQLをWindows Azure上で使えるようにしたいという動きがあるのなら、検討事項として挙がってくると思います。


 INDEX
  [特集] Windows Azureインタビュー
  現実はどうなの? クラウドとWindows Azure
  1.マイクロソフトのクラウド戦略/Windows Azureでの.NET技術以外の活用
    2.Windows Azureの展開/運用/パフォーマンス/セキュリティ
Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

キャリアアップ

.NET未来展望台

未来展望台コーナースポンサーからのお知らせ


- PR -
- PR -
ソリューションFLASH

「ITmedia マーケティング」新着記事

イーロン・マスク氏がユーザーに問いかけた「Vine復活」は良いアイデアか?
イーロン・マスク氏は自身のXアカウントで、ショート動画サービス「Vine」を復活させるべ...

ドコモとサイバーエージェントの共同出資会社がCookie非依存のターゲティング広告配信手法を開発
Prism Partnerは、NTTドコモが提供するファーストパーティデータの活用により、ドコモオ...

「インクルーシブマーケティング」実践のポイントは? ネオマーケティングが支援サービスを提供
ネオマーケティングは、インクルーシブマーケティングの実践に向けたサービスを開始した...