前回と前々回の連載を通じて、グリッド・コンピューティングの起源や技術が持つ意味を通じて何が出来るのかを紐解き、特にビジネスにおいてグリッドがどのような価値をもたらすかを述べてきました。
グリッドが単なる科学計算のための高速化、大容量化を可能にするだけの技術ではないことは、今までの説明でもご理解いただけたと思います。グリッドはネットワーク上に分散している異なる組織の異なる機種のコンピュータ群を動的に連携させて、一つの仮想的なコンピュータの資源を提供することを可能にします。
そこで今回は、グリッドの応用例を通じて、グリッド技術がもたらす「仮想」の意味を掘り下げ、今後どのような変貌を遂げて行くのか考えてみたいと思います。
オンラインゲームでの活用
いきなり「ゲームでの応用」と言われても、読者の方々には奇異に聞こえるかもしれませんので、簡単に背景を述べておきましょう。
仮想的な空間を共有し、他のプレーヤーとインタラクションをとりながらプレイを進めるオンライン・ゲームでは、大規模のものでは数1000から数10万人を超えるプレーヤーがネットワークを介しゲーム・サーバ上に構築された仮想空間上に集まってきます。
各プレーヤーの操作が他の参加者に適切に伝わり、かつゲームの空間の状態が操作毎に更新される様子は、大規模なデータベースに似ています。プレーヤーの数が増え、かつ空間内の表現が精緻になるに従って、サーバーへの負担は急速に大きくなります。そのため1つのオンライン・ゲームのサービスが1000台以上のサーバーで支えられている例も珍しくありません。
今までのオンライン・ゲームでは、ゲーム空間が複数のサーバーに物理的に分割されて構成されていました。このため、ある人が友人と一緒にプレイをしようとしたとしても、運悪く別々のサーバーに割り振られてしまうと、お互いにコミュニケーションがとれない、ということが起きていました。
そこで、グリッドの機能を用いると、複数の独立したサーバーをあたかも一つのサーバーとして扱うことができ、ゲーム空間上のすべての人とコミュニケーションをとることが可能な空間を提供することが可能となります。
このように、単一サーバーの能力を越えた世界を実現できるため、より多様性のあるゲームの世界がプレーヤーに提供できるようになります。こうしたアプローチを取ると、新たなメリットも現れます。例えばサーバーに障害が発生したり、特定のサーバーが過負荷状態に陥ったりした場合に、ゲームのサービスを中断することなく、他のサーバーに動的に資源の再配置をし、プレーヤーからは何も気付かれずにゲーム・サービスを提供し続けることが出来るようになります。
また、今までは人手を介して、サーバーの再構成を行っていたために保守、運用に多大な労力がかかっていました。ここでグリッドの仮想化の技術を利用することにより、サービスの品質を維持しながら、システムの弾力性を実現し、これらの労力を軽減できるようになるのです。
今までグリッドと言うと大学や研究所だけで使われている遠い存在だと思われていたかもしれませんが、実はお茶の間で楽しむ身近なエンタテインメントを支えている技術であることにお気付きいただけたのではないでしょうか。
半導体製品設計における活用
マイクロプロセサなどの高度な論理回路の開発においては、機能の多様化・複雑化に伴い膨大なシミュレーションおよび検証作業が必要となってきます。しかし競争の激しい今日においては、開発期間の短縮とコスト削減は重要な課題とされています。その一方で、当然ながら製品の品質については一切の妥協は許されません。
そこでグリッド技術を活用し、部門内外の、必要な場合には全社的に分散しているコンピュータをまとめて、一つの仮想的なスーパーコンピュータを構成します。この上にEDA (Electronic Design Automation)ツールとジョブスケジューラとを組み合わせた仮想設計シミュレータを走らせるのです。
このジョブスケジューラは、たとえば休日や深夜などコンピュータが利用されていない時間帯に処理を実行する上で重要な役割を担います。例えば、ある大規模な回路設計の場合には、数千から1万近いCPUを活用して、数万ものEDAツールのタスクを実行します。これだけのマシンを特定の回路設計業務のためだけに用意することは経済的にも困難です。また開発期間が終了した場合、他の検証作業が始まるまで活用されないため、無駄なIT資産を抱えることになってしまいます。
グリッドの技術を導入することで、現在開発部門が利用可能なコンピュータよりも大きな規模のコンピュータを用いてシミュレーションを行えます。このため、シミュレーションのパターンやデータを多様化することで、設計後のエラー発生率を低減でき、設計に要する期間やコストを削減することも可能となります。
このように半導体製品設計においては、コスト、品質、納期と言う厳しい制約条件の中、グリッドの技術を活用して生産性の向上に努めています。
ユーティリティ、そしてオンデマンドへ
オンライン・ゲームと半導体製品設計。一見全く関係ないような例を挙げましたが、グリッドの仮想化を通じて、ITインフラに拘束されず、業務本来の能力を高めることが可能になっている点で共通点が見られます。
今まではアプリケーションに合わせてサーバーやストレージ等のIT資源を確保し、システムを構築してきたため、アプリケーションとITインフラとが密接かつ固定的に結びついていました。そのためビジネス環境の変化や、アプリケーションの変更に応じてその都度ITインフラを再構成する必要が生じていました。
ところがグリッドが持つ動的な資源配分の機能により、複数の組織を跨ってIT資源が利用可能になることでアプリケーションに必要な量のIT資源を必要な時点で確保できるようにすることができます。
今後ビジネスの環境が激しく変化することが予想される中、アプリケーションとITインフラとに柔軟性が無いと、そのIT環境は外界の変化に対し追従することができないものとなり、結局使われない資産となってしまう可能性があるのです。グリッドの持つコンピュータを仮想化する機能は、必要な時に必要なだけ資源を配分する仕組みに有効であるのです。
ではこれからどのような方向に進んで行くのでしょうか?
この「必要な時に必要なだけ」というのは、ビジネスの上で大きな変革を意味しています。即ち、IT資源を所有するモデルから、IT資源をサービスとして使うモデルへの変化をもたらすのです。グリッドが送電線のイメージからその言葉が広まっているのを前々回の連載の中で示しました。この本質は、電力や水道のようなユーティリティとして、IT資源が必要な時に何時でも利用できるようになることを意味しています。
グリッドの特徴であるIT資源の仮想化や共有化は、このようなITのユーティリティ化を支える重要な技術であることがご理解いただけたのではないでしょうか。このユーティリティ化によって、企業は本来自社のコア・コンピテンシーであるアプリケーションに専念することができ、市場に対して迅速にかつ柔軟にビジネスを展開できるようになるのです。
(佐貫 俊幸=日本IBM 基礎研究&エマージング・ビジネス)