about Cloud Computing…

前提

高速・広帯域ネットワーク相互接続環境に於いて、主にHTTPを前提とした、ネットワーク・アプリケーション大規模サービス事業者[*1]が、そのサービスを十全に行うため、

根本原理

「IT資源を如何に効率的に利用する事を中心においた各種の取り組み」

今のフェーズは

プログラマブルIT資源による、分散・並列システムの開発モデル運用モデルの取り組み」[*2]

ビジネスモデル

On-demand self-service, Pay-as-you-go fair-pricing」[*3]

つまり

utility computing [*4]

さらに

the Internet operating system [*5]


[*1] たとえば、単純な会社案内のサイトでも、ヤフーに貼られたとか、ニュースで取り上げられたかで、急なアクセス増加(バーストアクセス)があります。つまり、この状況ではあなたのサイトは、大規模サービスサイトとなります。準備不足でアクセスをさばききれない場合は、深刻な機会損失になるでしょう。

[*2] 突発的な過負荷に対応するには、サーバ(サービス)をスケールアップ(性能向上)させるか、スケールアウト(分散・並列)する方法があります。(サービスの構築手法の困難さを考慮しなければ)スケールアウトを選択するほうが柔軟です。スケールアップは最大値が限定され、また機材が高額になってしまいます。スケールアウトは安価な機材を並べることにより、比較的低価格に対応できます。ただし、スケールアウト手法はサービスの構築手法を分散・並列処理に最適化しなければなりません。つまり、サービス開発に於いて、スケールアウトする事を前提に設計・開発する必要があるわけです。

[*3] しかし、最大負荷を想定して計算資源を確保しておくのは、平常時には無駄なコストになってしまいます。そこで、必要な時に計算資源をオンデマンドで利用でき、不要になれば止めることができて、実際に使った計算資源について従量課金で利用できる事が重要なポイントになります。また、スケールアウト・スケールインを機械的に行うために、セルフサービスの仕組み(API)の提供も必須な条件と言えるでしょう。

[*4] 現状では AWS EC2 のように、生の計算資源を効率的に利用できるような仕組みは提供されつつあります。しかし、計算資源のユーティリティ化はまだ発展途上にあります。

計算資源が電気やガス・水道のように、安心出来る価格で、必要な時に即座に使えるためには何が必要でしょうか?

もちろん、計算資源は電気や水道と等価ではありません。それは、UNIX tools のように単純な用途の組み合わせというような形になるかもしれませんし、ソフトウェアエージェントといった形になるかもしれません。

[*5] クラウドでLinuxディストリビューションにあたるものは何になるだろう?

さてさて、もう次のフェーズを考えないといけない時期になったようです。