【第155回】クラウドとは何か(前編) -クラウドによって何が変わるか

今回は筆者の専門分野の話題を一席。
クラウドとは何か?
その答えを見つける前に、クラウドが出現した背景を説明してみよう。
2005年のおそらく5月頃のことである。筆者はあるパーティーで当時日本グーグルの社長であった、村上憲郎氏と名刺交換をした。
その際に筆者は「御社は検索エンジンの会社ですね」と言ったところ、「いえ、ハードウェアの会社です」と意外な答えが返ってきたのである。よくよく話を伺ってみると、グーグルは膨大なハードウェア(サーバー)をすべて自前で作っている世界最大のハードウェア・ベンダーだったのである。外販していないので知られていないだけである。
グーグル社のサーバー数は、2004年の上場時で5万台前後であったが、3年後の2007年時点では50万台前後、それが2011年では100万台にまで増殖しており、これは全世界のサーバーの10数%に相当するような地球規模のリソースなのである。データセンターもアメリカのオレゴン州ダレス、ノースカロライナ州レノア、サウスカロライナ州バークレー、オクラホマ州プライア、アイオワ州カウンシスブラフス等、38ヶ所に散在する。ちなみに、日本で年間に出荷されるサーバーの台数は約60万台である。アマゾン50万台、マイクロソフト50万台で、世界で出荷されるサーバーの20%をヤフー、アマゾン、マイクロソフト、セールスフォース、IBM、グーグル等の米国のクラウドベンダーが購入している。しかも彼らはその膨大なリソースをほとんど無料でユーザーに提供していたのである。

図1
cloud1

図1を見ていただきたい。100坪の土地を利用するためには連続した物理的な土地が100坪存在しなければならない。これは当たり前の話である。ゆえに不動産のことを英語では「Real Estate」と言う。
ところが、コンピュータ上の土地である、100MBの領域であったならばどうであろうか?これはネットワークさえつながっていればフランスのサーバーから10MB、ドイツのサーバーから20MB、日本のサーバーから30MBと、世界中のサーバーからリソースを切り貼りして100MBを提供することが可能となる。
グーグルやアマゾンのような膨大なコンピュータ・リソースを保有している会社は、このあまったリソースを寄せ集めてサービスとして提供することを思いついたのである。これがクラウドの始まりである。
ネットワーク(雲)の向こう側のリソースを安価にユーザーに開放することによって、ハードウェアリソースを自前で持たない世界を実現する流れである。

●オンデマンドとオンプレミス
最近コンピュータ業界でオンプレミス(On-Premises)という言葉が流行している。
これは、オープンの時代に旧型の汎用機をレガシーと命名した時と似ていて、クラウドによるオンデマンド(On-demand)の対語として、旧来型の自社でハードウェアを運用することを半ば揶揄してできた造語であり、最近になって(クラウドが登場して)使われだした言葉なのである。

図2

cloud2

●グリッド・コンピューティングとユーティリティ・コンピューティングとクラウドの概念の比較
(以下引用)
グリッド・コンピューティング(Grid Computing:分散コンピューティング)とは、ネットワークを介して複数のコンピュータを仮想的な高性能コンピュータを作り、利用者はそこから必要なだけ処理能力や記憶容量を取り出して使うシステム。

ユーティリティ・コンピューティングとは、処理能力や記憶容量など、コンピュータの持つ計算資源を必要なときに必要なだけ購入して利用する方式。「ユーティリティ」(utility)とは電気・ガス・水道などの公共サービスのことで、コンピュータの提供する能力を公共サービスのような形態で利用するモデルのことを指す。
現在、コンピュータによる情報処理や記録が必要な場合、コンピュータ自体を購入して保有し、これを利用する必要がある。企業の基幹システムに使うサーバなどは、ピーク性能に合わせて高価で高性能な機種を用意しなければならず、普段はCPUやメモリのほとんどが遊んでいることが珍しくないが、アクセスが想定外に急増すると対応できずにシステムがダウンしてしまうことがある。また、性能を高めるには機器を買い換えたり買い足さなければならない。
こうした状況は、電気を得るために発電機を買ったり、飲み水を得るために浄水場を建設するようなもので、個々の企業や個人がこうした投資を行うのはいかにも効率が悪い。そこで、公共サービスをモデルに、コンピュータや記憶装置を大量に設置した施設を作り、ネットワークを通じてその資源を企業などに提供するという利用形態が考案された。これがユーティリティコンピューティングである。
これにより、CPU性能やメモリ、ディスクなどの容量を、必要なときに必要なだけ利用し、使った分だけ料金を支払うという環境が実現する。
公共サービスのように汎用的なユーティリティコンピューティングサービスはまだ実現しておらず、技術基盤や標準の開発・策定が待たれる状況にある。しかし、一部の大企業などではサーバやストレージを集約して仮想化し、必要な部門(あるいはアプリケーション)に必要なだけ資源を提供するというシステムが採用されており、コンセプトとしては一部実用化されているとも言える。
(以上、IT用語辞典e-Wordsより引用)

クラウドコンピューティングは、上記2つの概念を継承してネットワークにつながった複数のコンピュータ・リソースをまとめて1つのコンピュータとみなし、大規模なコンピューティング・リソースを必要とする演算処理を分散処理させるというグリッド・コンピューティングの概念を継承し、電力・水道・ガスと同じように実際に使用した分だけ料金を支払うという、ユーティリティ・コンピューティングの概念を継承している。
この他にも、オンデマンド・コンピューティング、ユビキタス・コンピューティングの概念も包含していると言えるだろう。

●サービス形態 -ASPとどう違うのか?
従来、インターネットを通じてアプリケーションソフトのサービスを受けることをASP(Application Service Provider)と呼んでいた。これとクラウドのサービスはどう異なるのであろうか?

図3

cloud3

(以下引用)
ASPとは、インターネットを通じてアプリケーションを顧客に提供する事業者のことである。ASPは自社の保有するサーバーにアプリケーションソフトをインストールし、そのアプリケーションソフトをインターネット越しにレンタルしている。
顧客(クライアント)は、Webブラウザを用いてアプリケーションにアクセスし、自分の業務に利用することができる。ASPによってアプリケーションをレンタル利用することには導入費用や手間などを大幅に削減することが出来るメリットがある。ユーザーのパソコンには、個々のアプリケーションソフトをインストールする必要がなくなるので、企業内の情報システム部門の負担であるアプリケーションのインストールや管理、およびそのアップグレードなどを独自に行わなくて済むようになる(以下略)
(以上、IT用語辞典BINARYより一部引用)

クラウドでは、上記のASPのサービス概念をさらに進化させ、SaaS(サーズ)、PaaS(パース)、HaaS(ハース)、IaaS(イアース)という4段階のサービス形態を提供している。

SaaSとは、Software as a Serviceの略で、アプリケーション・ソフトウェアの機能をインターネット上で提供するサービスのことで、クラウドでは一番最上位(エンドユーザーに近い)レイヤーのサービスとなる。
弊社「ECObjects」のクラウドサービスや、グーグルのApps for Business (Gmail, Googleドキュメント)や、セールスフォースのCRMなどがこれに相当する。

PaaS(Platform as a Service)とは、アプリケーションを稼動させるプラットフォーム機能をインターネット上で提供するサービスで、グーグルのApp Engine(GAE)、セールスフォースのForce.com、HerokuやIBM Smart Business Cloudがこれに相当する。
このサービスは、CPU、OS、ミドルウェア、データベース環境をデフォルトで提供し、利用量に応じて課金する仕組みとなっている。

HaaS(Hardware as a Service)は最近では、IaaS(Infrastructure as a Service)にとって代わられて表現されているので、同じ概念と思ってよい。
これはPaaSをもっとHaaSとIaaSの相違をあえて述べるならば、アマゾンのEC2のようにOSを含むサービスをIaaSと呼び、OSを含まない素の環境提供をHaaSと呼んでいるようである。

IaaSは、PaaSのサービスをミドルウェアをぬいたサービスで、ユーザーはCPU、メモリ、ハードディスク、ネットワークのみの、何もインストールされていない環境を提供され、そこにミドルウェアやDBやアプリケーションを構築して利用するというサービスである。
VMなどの仮想化技術を使用しなければ、本質的にはレンタルサーバーと何ら変わりはない。代表的なものに、Amazon EC2(Amazon Elastic Compute Cloud)や、NTTコミュニケーションズのBizホスティング、IIJのGIOコンポーネントサービスや、マイクロソフトのWindows Azure、ニフティのニフティクラウドなどが代表的なサービスである。

●クラウドによって何が変わるのか?

cloud4

(1)クラウドによって何が変わるか 買うから利用するへ(所有から非所有へ)
現在SAPなどのシステムを立ち上げようと思ったら、以下のような資産(asset)を購入しなければならない。

パッケージ n千万
サーバー、ルーター等のハードウエア n百万
Oracleデータベース n百万
Weblogic等のミドルウェア n百万
カスタマイズ費用 n千万

これによって合計n千万から億単位の費用がかかる。
これらの資産はBS(貸借対照表)に資産として計上され、3年償却や5年償却で処理されることになる。またこれらの予算を確保するために、数年レンジでの予算化申請をしたり役員会の稟議申請を行なわなければならないので膨大な事務処理や社内根回しが必要になる。当然必要なときにタイムリーにシステム化できない。
これがクラウドの世界になると、月々の利用料を支払うだけなので、利用者100人に対してクラウド・アプリケーション利用料1,000円/一人月額で100人×1,000円=10万円、それにクラウド・ハードウェア利用料10円×24h×31日(1ヶ月)=7,440円で、合計10万7,440円で稼動させることが出来るのである。
これは資産計上されず部門の経費で落ちるので稟議も不要であるし、決断も実行も早い。
かつて80年代までのIBMのハードウェアはリースのみであった。販売はしなかったのである。それゆえユーザーは革新的に進歩する当時の大型汎用コンピュータを少ない予算で次々とバージョンアップすることができた。クラウドはちょうどそのモデルに回帰するのである。
また、絶え間ないバージョンアップに追加費用を求められることにうんざりしているユーザーも“所有せず利用する”ことによってその追加料金から開放されることになるのである。
現在弊社にもWindows2003サーバーのサポート停止に伴うWindows2008サーバーのバージョンアップやWindows7対応などの依頼が来ているが、オンプレミスで所有せずクラウドで利用するだけならばこれらバージョンアップによる追加費用は今後一切必要なくなるのである。

 cloud5

(2)クラウドによって何が変わるか アプリケーション・プロダクトのパラダイムシフト
1990年代、ネオダマという言葉があった。ネはネットワークのネ、オはオープンのオ、ダはダウンサイジングのダ、マはマルチメデイアのマである。
大型汎用機全盛の恐竜時代からUNIXサーバーやPCやインターネット全盛のオープン時代に移行した時代の流行語である。1990年代初頭、インターネットはUNIXサーバー間で利用されており、PCからアクセスしているユーザーは稀有であった。
筆者はWindows
3.1のPCからPPP(Pioint to Point
プロトコル)を使ってインターネットにアクセスしていて、当時唯一のブラウザであるモザイク(Mosaic:英語ではモゼークと発音する)を使って一晩中ネットサーフィンを楽しんだ。そのころ世界中のサーバーは100台に満たず、日本に存在するwwwサーバーは国立がんセンターやノートルダム女子大くらいしかなかった時代である。
その時代(1990年代)を通じて業務アプリケーションソフトの自然淘汰が進んだ。それまで、業務アプリケーションは汎用機の上でしか動かず、経理や生産管理や銀行のオンラインのシステムはすべて汎用機上で動くように設計されていて、COBOLやFORTLANでPL1で記述され、UNIXサーバーやPCの上では動かなかったのである。もちろんインターネットの上でも動かない。
GUIもダム端末と呼ばれるテキストのみの画面で、現在のようにラジオボタンやドラッグ&ドロップやクリックしたりするGUIは存在しなかった。もちろん図もグラフの図面も表示できない。
その汎用機のダム端末の環境から、WindowsのGUIを使用するためには、レガシー汎用機上のCOBOLなどの高級言語ソースコードを全面的に書き直す必要があったのである。
その10年間でレガシーパッケージはオープンのインフラに乗せるために、C言語やJavaやVisual
Basicのようなオープンな言語で書き直さなければならなかった。SAPなどのERPもそのような流れの中で主流となったのである。その恐竜時代からオープン時代への流れの中でほとんどのレガシーアプリケーションは移植されず淘汰されたのである。
いま到来しているクラウドの時代はまさにそのオープン時代と同じ現象を引き起こすことになるであろう。即ち非クラウドのパッケージやソリューションは移植不能で、次の時代には存続できないのである。
ここで激しい淘汰が進む。しかもクラウドは価格体系が格段に安いので、100億も200億も移植にかけたならばとても採算が取れない。もとが取れないのである。現行のERPやVBで書かれたパッケージやクライアントサーバーモデルで作成されたアプリケーションパッケージはすべてJavaやPYTHONに書き直し、DBやミドルウエアも商用のOracleやWeblogicなどからオープンソースの(即ち無料ということだが)MySQLやPostgreSQLやApacheやGlassFishiなどに移植しなおさなければならないということを意味する。
これば膨大な再開発投資である。言語とDBとミドルウェアインフラを全面変更しなければならないからである。巨大ERPはすでにこのために新規の開発投資を凍結している。賢いユーザーはこれから業務アプリケーションを導入するにあたって、近い将来利用できなくなるオンプレミスのプロダクトを選択しないであろう。
この数年で給与計算や経理パッケージや生産管理パッケージの主流が変化することは間違いないからである。

次回へ続く