システム論Uレポート

グリッドコンピューティングについて

高木研

村井創 北川寛 大道寺聡 丸田央 池田康臣

 

 

まえがき

 

グリッドコンピューティングとはネットワークを介して複数のコンピュータを結ぶことで仮想的に高性能コンピュータをつくり、利用者はそこから必要なだけ処理能力や記憶容量を取り出して使うというシステムである。複数のコンピュータに並列処理を行わせることで、一台一台の性能は低くとも高速に大量の処理を実行することが可能となる。ビジネス利用や学術研究など、多くの可能性が模索されており、実現に向けてさまざまな試みが行なわれている。インターネットを通じて家庭のパソコン等の空いているCPUパワーを集め、暗号解読や医療研究などの複雑な処理を行わせる分散コンピューティングプロジェクトは既にいくつかあるが、グリッドコンピューティングはこうした技術を含む、より包括的な概念といえる。これらは従来、学術機関を中心として研究が進められていた。最近ではグリッドコンピューティングの商業利用や、標準化が徐々に進み始めている。よく知られているものとしては、特定分野の分散コンピューティングプロジェクトとして暗号解読の「distributed.net」、地球外知性の探索「SETI@home」、インテルとともに主に医療研究分野に力を入れている「United Devices」が挙げられる。

 

 

grid computing 背景

 

名前の由来

 どこで発電されているかを意識することなく電力が使えるようにしていること(電力グリッド)のアナロジーから、グリッドコンピューティングと呼ばれている。

 

コンピュータの発展

 コンピュータの発展の歴史は、メインフレームから始まり、現在はPCやその発展形であるPCサーバがボリュームゾーンを構成している。この流れは、ムーアの法則によるマイクロプロセッサの急速な性能向上と一般消費者レベルでのPC需要の拡大を背景に、「より安価でより強力なコンピュータ」を指向するものであった(集中から分散への移行)。メインフレームからワークステーション、そしてPCへというトレンドである。

 ここ50年間におけるネットワークの進化は分散コンピューティングの拡大を促進するものであったと言える。

 

集中と分散

 一方、分散化はハードウェアのコスト削減につながった反面、台数の爆発的な増加に伴う管理コストの増大も引き起こした。その反省から、逆に集中化へと向かう動きが出てきた。これは、集中から分散へという流れの揺り戻しとも見られるが、かつてのメインフレームへ逆行するということではない。

 そして、ここに来て「集中」か「分散」かという単純な問題ではなく、集中/分散それぞれの特徴をより深く追求し、それぞれのメリットを十分に引き出した上で組み合わせて利用するという昇華型モデルが定着しつつある。

 

パラダイム

 現在のコンピューティング・パラダイムは、集中と分散の二極化が進行している。これは、個々のハードウェアについても言えることだが、システムというレベルでも同様の動きがある。

 これまでの「サーバ/クライアントモデル」に基づくインターネット環境でも、サーバに求められる処理能力は増大し続けてきており、基本的にはネットワーク上のノード数に比例する形で起こっている。つまり、ノード数が倍になれば必要な処理能力や処理すべきトランザクションも倍になる、という関係である。インターネットへの接続環境が普及し、かつ、PC普及率が伸び続けた結果、ノード数は急速に増大したが、それでも比例関係以上ではなかった。

 しかし、今後P2P技術が広く普及することが想定され、さらに個人の情報アクセスの媒体がPCからPDAや携帯電話といったデバイスへと移り変わりつつある。この膨大な数のデバイス群が、特定のサーバにアクセスするのではなく、P2Pでデバイス群同士が相互にコミュニケーションするとなれば、通信経路の数はノード数の2乗に比例して増大していくことになる。つまり、nのオーダーからn2のオーダーに移行する。

 

 

直方体: Server
 

 

 

 

 

 

 

 

 

 


 サーバ/クライアントモデルから網の目状のネットワークモデルへの移行に際して、並の拡張性では到底追いつかない

 

求められる信頼性と柔軟性

 従来のメインフレームの信頼性と考え方が異なるのは、あくまでも網の目状に展開するn2オーダーのネットワークを想定している点である。このため、「ダウンしない」堅牢さに加えて、柔軟性が求められる。インターネット環境では次々に新しいサービスが生まれている。メインフレームのように、堅牢ではあるが変更が容易ではないシステムでは、この環境でプラットフォームとして利用するのは困難である。そこで、堅牢性のみを追求するのではなく、柔軟性と堅牢性を共に高めていく必要がある。

 ハードウェアの品質を向上させ、簡単にはダウンしないように信頼性を向上させる努力は続けられているが、それでも稼働を続ける間に何かしらの故障が発生することは避けられない。故障すれば、当然保守作業が必要となる。つまり、「システムを停止せずに保守ができる」必要がある。

 

オルタナティブとしてのグリッドコンピューティング

 第一世代ASPは今終焉を迎えつつあり、ASPビジネスモデルの新しい波が押し寄せつつある。新しいビジネスモデルでは、ASPはもはや1 つあるいは複数のアプリケーションを提供するわけではない。むしろ、成功するASPモデルはデータセンターを「ピア」ASP群のネットワーク上のノードとして活用するであろう。これらのASP群はコンピュータ・リソース、アプリケーション知識、さらに顧客までを共有するようになる。ASP同士は共同パートナー、つまりASP群のネットワーク上のピアとしてコミュニケーションする。これを実現する手法として、グリッドコンピューティングが欠かすことのできない技術であるということは、もはや疑う余地を持たない。

 

 

技術

 

 「グリッド・コンピューティング」とは分散コンピューティング技術のことです。ネットワーク上の複数のコンピュータを,計算リソースとして共有化し,仮想的な大規模コンピュータを構築しようとしているものです。ユーザーからは,あたかも自分のデスクトップ上で高度な計算を処理しているかのように感じられるシステムです。
好きなときに,好きなだけ使えるのがグリッドの狙いです。
 ネットワーク上のサーバやストレージ,アプリケーションなどを共有化しています。解析などを実行するように指示すると,現在の負荷や計算量に応じて,グリッドを構成しているネットワーク上の適当なサーバやクラスタで処理します。
 グリッドのネットワーク上にあるスーパーコンピュータやクラスタマシンを使い,大規模な科学技術計算や大量のデータアクセスを高速に処理できると期待されています。
 リソースも有効に使うことが可能です。たまにしか行わない大規模シミュレーションのために,高価なサーバは購入しづらいですが,グリッドなら,社内の複数のコンピュータリソースをクラスタ化したり,ベンダーの提供するサーバやクラスタを利用することが出来ます。大容量データを効率的に処理できる仮想的システムの構築に向けて、自社製品・他社製品を問わずインターネットを介して接続されたあらゆるリソースを融合・活用することを目指しています。

 

 

実例

 

 グリッドコンピューティングは、これまで、暗号解読、地球外知性の探索、医療研究分野などに応用されてきた。そのいずれもが単体のコンピュータでは到底及ばないような処理能力によって成果を上げている。

 

     distributed.net (暗号解読)

ある暗号解読コンテストで、1.8×1019種類以上という膨大な数の「鍵の可能性」を探らなければならないような問題が出題された。一台のコンピュータでは数千年かかるような計算量だが、distributed.netチームは、インターネットに接続された何千台ものコンピュータに処理を分散することにより、解読までの時間を大幅に短縮した(約250日)。

 

     SETIhome (地球外知性の探索)

これは、宇宙から発せられる電波信号の中に知的生命体が存在する兆候を探そうというプロジェクトであり、200012月の時点で世界226ヶ国、260万人の人々が参加している。

 プエルトリコにある『アレシボ電波望遠鏡(世界最大:直径約300m)』が収集したデータを、中央センターで細かく分けて各コンピュータに割り振る。各マシンは、受け取った電波データをふるいにかけ、規則性のあるパターンを探し出すという仕組みになっている。

 このプロジェクトに参加した全てのコンピュータを合わせると、世界最強のコンピュータの約2倍の処理能力を持つことになる上、コストはずっと割安なものになる。

 

     GenomehomeHoldinghome(医療研究分野)

医療の分野では、タンパク質の解析に主に用いられている。

遺伝子の構造は全て解読されたものの、タンパク質がどうやって作られ、独特の形にまとまり、独特の振る舞いをするのかは全くわからない。

 そこで、グリッドコンピューティングによってタンパク質の構造・動作を解析しようというプロジェクトが進行している。

 タンパク質の構造・動作がわかれば、危険で致命的なタンパク質が原因となって起きる各種の病気を治す方法が見つかる可能性がある。

 また、タンパク質と遺伝子との関係が判明すれば、機能のわかっていない遺伝子の特徴がわかるかも知れない。

 →消化に使われるタンパク質を形成するものと同じ塩基配列を持っているのならば、その遺伝子も消化に使われている可能性があるといえる。

 

 

展望

 

グリッドコンピューティングは、オープン・プロトコルをベースとして、ネットワークを介して複数のコンピュータを束ねることで巨大なコンピューティング力を蓄えるシステムだ.これまでオンラインゲームでは、サーバの規模によって参加者数が限られ、サーバのトラブルやメンテナンスによるゲームの中断が起こっていた。

グリッド・コンピューティングを用いれば、ネットワーク全体が仮想的な一つの高性能コンピュータのようになり、これまでのようなサーバの壁は無くなる。全体から得られるコンピューティング力を参加者が集中する場所、もしくは参加者の多いゲームに効率的に割り当てることで、数百万の人が一つのゲームに参加することも可能。また、これまでのように最大参加者数を想定したサーバを用意する必要はなくオンライン・ゲームの運営コストが抑えられるため、参加者が支払うサービス費も劇的に下がると見られている。