エンタープライズ:コラム 2002/09/02 20:27:00 更新


Gartner Column:第61回 メインフレームのすごさについて技術的に解説しよう[2]

今回はメインフレームが提供する最強のクラスタ環境である並列シスプレックスについて解説しよう。

 今回はメインフレームが提供する最強のクラスタ環境である並列シスプレックスについて解説しよう。UNIX/Windowsのクラスタ環境も急速に進化しているが、まだまだ並列シスプレックスとは距離があるのが現状だ。

 改めて言うまでもないが、クラスタは複数のサーバを組み合わせて運用するシステム形態である。現在、ハイエンドのUNIXサーバ環境では、クラスタ構成の使用が当たり前となっている。また、Windows環境では、Windows 2000 Advanced ServerおよびDatacenter Serverにクラスタ機能がバンドルされており、クラスタ採用の敷居はますます低くなっている。

 あまり他のクラスタ製品との比較対象となることはないが、IBMメインフレーム環境における並列シスプレックス(パラレル・シスプレックス)も、複数のメインフレームを有機的に統合している点でクラスタと呼ぶことができる。

 さて、クラスタ採用の目的は大きく二つある。可用性の向上(アベイラビリティ・クラスタ)と処理能力の向上(スケーラビリティ・クラスタ)だ。アベイラビリティ・クラスタ、つまり、障害発生時に待機系サーバが本番サーバに切り替わって処理を継続する構成においては、UNIXやWindowsも及第点を上げることができる(切り替え時間の点では並列シスプレックスには及ばないが)。しかし、スケーラビリティ・クラスタにおいては、ごく最近まで、UNIX/Windows系のクラスタと並列シスプレックスの格差はかなり大きいものがあった。

 その大きな理由は、UNIXやWindows OS、およびその上で稼動するミドルウェア群がクラスタを前提とした設計となっておらず、クラスタがいわば後付けで実装されているという点だ。このような環境でも、Webサーバファームのようにディスクアクセスのほとんどが読み取りの場合には問題は発生しない。しかし、OLTPのようにデータベースの共用データへの更新が頻繁に発生するケースでは、キャッシュアクセスやロックのオーバーヘッドがどうしても大きくなってしまう。

 結果的に、人為的にワークロードを各サーバに均等に割り振るようなチューニング作業が必要となることが多い。つまり、複数のサーバを組み合わせてシングルシステムイメージで稼動させることが難しいのだ。

 メインフレーム環境も元々クラスタをサポートしていたわけではない。だが、1994年に発表された並列シスプレックスにより、ハードとソフトによる全面的なクラスタサポートが提供されることになった。

 並列シスプレックスでは、複数のメインフレーム間が直接接続されるのではなく、結合機構(CF)と呼ばれるハードウェアをハブとして介して接続される。結合機構のメモリーには、グローバルバッファー、ロック、プロセス間通信のキューなどが保持されている。

 並列シスプレックスの構成はハードウェア的に見ればそれほど複雑ではなく、UNIX/Windows環境でもすぐに実現できそうではある(実際、CFも実は通常のメインフレームと基本的に同じハードである)。並列シスプレックスのすごい点はOS(ファイル・システムなど)、TPモニター(CICSまたはDB2)、DBMS(DB2またはIMS DB)が、CFの存在を前提として書き換えられていることだ。そのため、全ディスク上のデータに同時にキャッシュ経由の読み書きが可能となっている。

 また、ロックのオーバーヘッドも低いことから、ほぼ直線的なスケーラビリティが達成可能になる。さらには実行中のワークロードのシステム間の移動、動的ロードバランシングなどが実現され、前回説明したワークロード管理機能(WLM)もシスプレックス全体にまたがって機能する。つまり、ほぼシングルシステムイメージで複数のメインフレームを運用することが可能となったのである。

 UNIXやWindowsのクラスタ機能は、ソフト面での大幅なリエンジニアリングがない限り、並列シスプレックスの世界に到達できないだろう。

 しかし、このようなスケーラビリティクラスタにおける機能差を一気に縮小する製品が登場した。それが、Oracle 9iにおけるリアル・アプリケーション・クラスタ(RAC)である。RACではキャッシュフュージョンと呼ばれるテクノロジーにより、共用データのキャッシュをシステム間で直接読み書きできるようになり(CF中のグローバルバッファーと同じ効果である)、DBMSの世界の中だけでの話はあるが、複数サーバによる高いOLTPスケーラビリティの実現が可能になっている(先に、メインフレームとUNIX/Windowsのクラスタ機能の格差がかなり大きかったのは「ごく最近まで」と書いたのはそのためである)。

 また、メインフレームの世界では、遠隔地にあるサイト間でクラスタ構成を取るGDPS(Geographically Dispersed Parallel Sysplex)もある。これは、仮にデータセンター全体が壊滅状態になっても、ほぼ中断なしに処理を続行できる究極の災害対策ソリューションであり、既に20サイト以上で本番運用が行われているようだ。

 なお、UNIXの世界でもHPのコンチネンタルクラスタのような広域クラスタ製品があり、ユーザーも増えているようだが、実績という点ではGDPSの後追いになっている。

 クラスタの領域でも、UNIXサーバはメインフレームを追いかけ、WindowsはUNIXを追いかけている。オラクル9i RACの登場によりギャップはかなり縮まった。しかし、ここ数年間はこのギャップは存在し続けるというのがガートナーの見方だ。

 次回は、論理区画(LPAR)などのメインフレームのその他の機能について解説しよう。

[栗原 潔,ガートナージャパン]