Muranaga's View

読書、美術鑑賞、ときにビジネスの日々

「クラウドを超えて」("Above the Clouds")を読んで

計算機科学やインターネットの技術者にとって、一度は目を通すべき white paper として紹介した UC Berkeley RAD の「クラウドを超えて」--- "Above the Clouds: A Berkeley View of Cloud Computing"(同 PDF 版)を読んで、その章立てと、それぞれにどんなことが書いてあるかを一言づつまとめた。

  1. Executive Summary
  2. Cloud Computing: An Old Idea Whose Time Has (Finally) Come
  3. What is Cloud Computing?
  4. Clouds in a Perfect Storm: Why Now, Not Then?
    • コモディティ計算機による超大規模データセンターの建設・運用がクラウド提供者となる主要素。それに加えて重要な役割を果たす新技術・ビジネスモデル、アプリケーション
    1. New Technology Trends and Business Models
      • カスタマー・サポート・CRM が薄い low touch の傾向
    2. New Application Opportunities
      • モバイル対話型アプリ、並行バッチ処理、分析系、計算量の多いデスクトップ・アプリ、データをクラウドに動かすコストに見合うアプリ
  5. Classes of Utility Computing
  6. Cloud Computing Economics
    • "pay as you go"(使っただけを現金払い)、資産コストを運用コストに変えるのがクラウド
    1. Elasticity: Shifting the Risk
      • 昼夜でピークが違う場合、ピーク値予測が違った場合、それにより顧客を失った場合
      • クラウドを使うと利益が出る場合を定式化
    2. Comparing Costs: Should I Move to the Cloud?
      • 今のまま従来型データセンターに留まるべきか、クラウドに移行するべきか
      • 現時点での通信バンド幅、CPU、ストレージのコスト表
      • さらに、資源ごとに払うか、電力・冷却・建物のコスト、運用コストを考慮
      • そして、クラウドへデータを移動するコスト、クラウドで計算するコストを加味して、クラウドに移行すべきかを判断する。
  7. Top 10 Obstacles and Opportunities for Cloud Computing
    1. Availability of a Service
      • 故障によりサービスされない → 複数のクラウド利用で継続性を確保
      • DDoS アタック → 素早くスケールアップする対応
    2. Data Lock-In
      • lock-in はクラウド提供者には望ましいが利用者にとっては課題。
      • API の標準化が一つの解。複数のクラウド、たとえばプライベート・クラウドとパブリック・クラウドで同じソフト基盤が使える。
    3. Data Confidentiality and Auditability
      • 「大事なわれわれの企業データをクラウドには置けない。」「クラウドに置いたデータが監査可能でなければならない。」という声に対する回答・機会。
      • 事前に暗号化したデータをクラウドに入れる方が、ローカルのデータセンターに平文でデータを入れるより安全である。
      • 監査用にゲストOS が届かない層を付加できる。
      • 国境を越えないでデータを扱うようなことも必要になる。
    4. Data Transfer Bottlenecks
      • クラウドにデータ転送するコストについて、3つの機会がある。
      1. データをディスクで送付する。
      2. いったんクラウドに入れてしまえさえすれば、データ転送がボトルネックにならない場合がある。
      3. 広域網のバンド幅にかかるコスト、イントラ・クラウド通信コストを削減する。
    5. Performance Unpredictability
      • 仮想マシンVM)は CPU とメモリを共有できるが、I/O の共有は性能的に問題がある。次のような機会が考えられる。
      1. アーキテクチャと OS による改善
      2. フラッシュメモリによる I/O 改善
      • HPC (High Performance Computing) ならではの課題もある。
    6. Scalable Storage
      • ストレージのクラウド化は難しい。
      • 商用クラウドでは、豊富な API、性能の保証、複雑なデータ構造をストレージ自身がサポートなどの対応が試みられている。
      • クラウドに合ったストレージはいまだ研究途上。
    7. Bugs in Large-Scale Distributed Systems
      • VM レベルでのバグ解析が一つのアプローチ
    8. Scaling Quickly
      • サービスレベルを保ったまま、素早く自動的にスケールアップ・スケールダウンができるようにすることが機会となる。
    9. Reputation Fate Sharing
      • "trusted email" のような評判を守るサービスが機会となる。
    10. Software Licensing
  8. Conclusion and Questions about the Clouds of Tomorrow
    • 「ユーティリティとしてのコンピューティング」という長年の夢がいよいよ実現しつつある。
    • クラウド提供者の視点:大規模データセンターをコストの安いところで建設、コモディティの CPU・ストレージ・ネットワークを利用することで、使っただけを支払う(pay-as-you-go)モデルへの可能性が開けた。いくつかの障害・問題点はあるものの、それに取り組む機会もある。
    • クラウド利用者の視点:ハードの新企業がファブレスであるかのように、ソフトの新企業がデータセンターを持たずに始められる。名だたる企業や大学もクラウドの弾力性・柔軟性を活用している。ピーク性能に合わせた運営が可能となる。
    • 次世代システムの開発者はクラウドに置くことを前提として設計するようになる。単体の VM 上でシステムの効率を追求するより、VM を水平・大規模にスケールさせることが追求される。
      • アプリケーション・ソフトウェア:
        • クラウドとクライアントに分割され、どちらもスケールアップだけでなくスケールダウンにも対応でき、クライアント側はクラウドから切り離されても使える必要がある。
      • インフラストラクチャ(基盤)・ソフトウェア:
        • もはや仮想マシン上で動いていることが前提で作られるべきだし、使った分だけ利用料を請求できるようにしておく必要がある。
      • ハードウェアシステム:
        • 1U ボックス、1 ラックではなくコンテナ単位のスケーリングができ、消費電力・エネルギーが考慮される設計が必要である。
        • 単一 OS ではなく、複数の仮想マシンが最も低次のソフトウェアとなる前提で設計される必要がある。
        • ディスク、DRAMフラッシュメモリを加えた記憶階層
        • データセンターのスイッチ、広域網ルータのバンド幅とコストを改善する必要がある。

読後の感想

基本的にはクラウド提供者の視点で書かれたポジション・ペーパーである。UC Berkeley の大御所も参加して、今後ますます重要性の増すクラウド・コンピューティングについて、今後の研究資金集めを狙っての white paper と言えるだろう。ここに挙げられた 10 の課題と機会は、その研究の方向性を示すものである。

クラウドを利用すべきか判断するのに、クラウドへのデータ転送コストを考慮したところがユニークである。商用化されているクラウドを分類した表、計算資源を調達するように必要なコストをまとめた表なども有用である。

このペーパーに書かれたクラウド提供側の課題を裏返してみると、クラウドを利用する側 --- SaaS 提供者であったり、Web アプリケーションの利用者であったり --- が、その活用技術・スキルをまだ開拓する余地があるということであり、そこにビジネスの機会を見出せる可能性があるということでもある。顧客との関係が low touch になるということは、顧客がクラウド利用スキルを身につけることに相当する。それは米国では可能かもしれない。しかしシステム・インテグレータにフルカスタマイズさせることに慣れた日本の顧客の場合はどうだろうか?

データの安全性・秘匿性・監査可能性についても、暗号化すればよいだけ、なのだろうか?プライベートなデータセンターからパブリックなクラウドへ移すことに対する精神的なバリアを、どうやったら取り除けるだろうか?

"Above the Clouds" に関するリソース

クラウド・コンピューティングに関するエントリ