グリッド・コンピューティング

グリッド・コンピューティングは、インターネットなどの広域のネットワーク上にある計算資源（CPUなどの計算能力や、ハードディスクなどの情報格納領域）を結びつけ、ひとつの複合したコンピュータシステムとしてサービスを提供する仕組みである。提供されるサービスは主に計算処理とデータの保存・利用に大別される。一箇所の計算センターや、一組のスーパーコンピュータでは足りないほどの大規模な計算処理や大量のデータを保存・利用するための手段として開発されている。
概要.
グリッドコンピューティングは、どこにでも、必要な情報サービスを、必要なときに、必要なだけ提供するという、「情報資源」の「ユーティリティ化」を目指しており、インターネットをインフラとして実現される、インターネットの次の世代の情報インフラを目指している。名前は、21世紀初頭時点ですでにそのような系統が確立しているインフラである電力送電網（パワーグリッド）に由来する。「遊休パソコンの計算力をまとめて高性能計算を行うもの」といった説明は、ある一面だけしか捉えずに報道されたものである。
コンピュータの処理能力は年々向上して来たが、大規模な計算を出来るだけ短時間で処理するために、並列コンピューティング・分散コンピューティング等の手段が開発されてきた。こうした技術を利用して一台のコンピュータの処理能力を飛躍的に向上させたものはスーパーコンピュータと呼ばれ、複数のコンピュータを統合して全体として処理能力を上げたものはコンピュータ・クラスターと呼ばれる。また、パーソナルコンピュータをベースとした計算機でも100個前後のCPUと数100GBのメモリを搭載できるものが存在する。
グリッド・コンピューティングは、各地に散在するこれらの大規模計算のためのスーパーコンピュータやコンピュータ・クラスターを統一的に利用出来るようにし、更に全体の処理スループットの増加を目指すものである。各地の計算センターに置かれたスーパーコンピュータやコンピュータ・クラスター等の計算資源は、それぞれに仕様が異なるため、従来それらの複数を利用する場合には個々の仕様に合わせた計算処理をそれぞれに用意しなければならなかったが、グリッド・コンピューティングはその手間を省き統一的に扱える様にするものである。
初期のグリッドは、大規模な計算処理を複数の計算センターで行なうことを目指す「コンピューティング・グリッド（計算グリッド）」であったが、大規模なデータを扱う必要のある科学研究分野で「データ・グリッド」が提唱・開発され、現在は計算処理とデータ保存・利用の両方の機能を備えているものが多い。また、産業界向けに開発されているツールキットは単体の計算処理よりも複数処理のスループット改善を重視して開発されているものが多い（これは処理の並列化、分散化に対しアプリケーション自体が対応していないケースが考慮されていることも一因である）。
グリッドの構成.
グリッド・コンピューティングは計算資源とそれを利用するためのミドルウェアによって実現される。ミドルウェアとはアプリケーションソフトウェアとオペレーティングシステムの中間に位置するソフトウェアで、各計算資源の仕様の違いを吸収し、またそれらを利用するための情報を統一的に提供するものである。
グリッドに提供される資源の要素となるのは、家庭のコンピュータやプラグコンピュータ、スーパーコンピュータのクラスターの規模になったり、強大な記憶資源や、情報やデータ、または動的に発生する情報を共有するようなことまでが考えられている。
グリッドに対して資源を要求して処理を与えることで、必要な資源が提供されるような仕組みである。
ミドルウェア.
グリッドの要素となるコンピュータは特定の仕様に限らないことが多く、また、手探りで作り上げていく要素が大きいため、オープンソースのフリーなオペレーティングシステムをベースに作り上げて行くことが模索されている。そうすることで、グリッド・コンピューティングは特定のCPUアーキテクチャや、オペレーティングシステムに限られない仕様を共有した、場合によってはソースコードを共有した仕様になって行くことが計画されている。
Globusツールキット.
Globusツールキットは、グリッドを構成するためのミドルウェアとして事実上の標準になりつつある。Globusが提供するサービスには以下のような物がある。
その他のツールキット.
Globusツールキット以外にも次のようなミドルウェア系ツールキットが存在する。ただし、グリッドと銘打っていても厳密にはコンピュータ・クラスターのためのツールキットであり、グリッド・コンピューティングの概念に適合しないものもある。