まず、今回の検証のバックグラウンドについて、宮田氏は次のように説明してくれた。
「現在はシステムのコスト削減が期待されています。その中で、高パフォーマンスの大型ハードウェアを導入するのではなく、個々のパフォーマンスは大型ハードウェアに及ばなくても、多くのノードを利用してクラスタリングを行うことで、処理性能と信頼性を確保しようというのが、トレンドになっています」
これは、x86プラットフォームの性能が向上したことで、クラスタリングによってエンタープライズサーバ並のハイパフォーマンスを低コストで実現できるようになったということだ。確かにハイエンドUNIXサーバはPCサーバより処理能力も高いし、単体での信頼性も非常に高い。しかし、障害が発生すると、即座にサービスダウンにつながってしまうのが問題だ。高価であるが故に予備機を準備しておくことも難しい。
それに対してPCサーバは単体でのパフォーマンスや信頼性はUNIXサーバに及ばないが、クラスタリングによってノード数を増加することでパフォーマンスを確保できるのであれば、ハイエンドUNIXサーバ並みの能力を安価に確保できる。また、個々の信頼性は劣っていても、クラスタリングによって複数のノードが互いに補うことになるので、故障が即サービスダウンとはならないのだ。
「今回は、その中でも業務でよく利用されるOracle RACを利用したクラスタリングについて、Webショッピングサイトを想定した環境において、さまざまな高負荷環境の中でSolaris 10がどれだけのパフォーマンスを発揮するのかを検証しました」と宮田氏は続ける。
今回の検証は、4つの評価ポイントを設定したという。第1のポイントは、最大8ノードまでノード数を追加し、トランザクション量の推移からスケーラビリティを確認することだ。
結果は8ノードまで、ほぼリニアにトランザクション数が伸びている。
宮田氏はこの結果に関して「OracleRACはスケーラビリティが高いため、システムを構築する際にそのパフォーマンスが推測しやすいという特徴があります。Solaris 10 on x86の環境においても、8ノードまで素直にトランザクション数が伸びることが確認できました。この点において、従来のUNIXやLinuxと遜色ないパフォーマンスを発揮すると言えます」と語る。
第2のポイントは、ノードに障害が発生したクラスタのノード数が縮退した環境を想定し、ノード数ごとのレスポンスタイムの変化を測定している。
この結果により、ノード数が少なくなるほど、レスポンスタイムは遅くなることが分かる。 「この結果は、我々の予想通りでした。クラスタリングを行う際、元のノード数が少ないほど、縮退が発生した際のパフォーマンス劣化が大きいということです」(宮田氏)