OpenVMS
Volume Shadowing for OpenVMS 説明書


前へ 次へ 目次 索引



第 9 章
ボリューム・シャドウイングの性能

Volume Shadowing for OpenVMS は,データ可用性の向上を目的とした製品であり,性能の向上を目的とした製品ではありません。性能とデータ可用性の話題は完全に分離できるものではないという認識のもとで,この章では Volume Shadowing for OpenVMS を使ったシステムの,性能への影響を説明します。シャドウ・セットの性能に影響を与える要因には以下のものがあります。

以下の節では,シャドウ・セットの状態と構成がリソース利用率と性能に与える影響について説明します。システム・リソースの利用を制御するためのガイドラインについて, 第 9.3 節 で説明します。シャドウ化されていないディスクと 1 メンバ・シャドウ・セットの性能には大きな違いがないので,ここでは複数メンバのシャドウ・セットを対象としています。

9.1 安定状態での性能

シャドウ・セットは,すべてのメンバに整合性があり,コピー操作やマージ操作が実行中でない場合,安定状態にあるといいます。安定状態にあるシャドウ・セットの全体的性能は,シャドウ化されていないディスクと同等かそれ以上です。シャドウ・セットで処理される読み込みと書き込みの入出力要求は,シャドウ化されていないディスクに比べて,ほんの僅かに多くの CPU 処理時間を必要とするだけです。シャドウ・セットでは,シャドウ化されていないディスクより効率よく読み込み要求を処理できる場合があります。これは,複数の読み込み要求に同時に応答するために,余分のディスクを使用できるためです。

安定状態のシャドウ・セットでは,シャドウイング・ソフトウェアは読み込みと書き込みの操作を以下のように処理します。

安定状態のシャドウ・セットの読み込み性能で,性能が向上する可能性がありますが,ボリューム・シャドウイングの主要な目的は,データの高可用性を実現することです。ボリューム・シャドウイングを,アプリケーションの読み込み入出力のスループットを改善する目的で使うことは,お勧めできません (入出力の負荷は明らかに増加します)。これは,新しいメンバを追加したりデータの整合性を維持するためにコピー操作やマージ操作を行う必要があるとき,またはメンバをシャドウ・セットから削除するときに,同じレベルの性能が得られないためです。 第 9.2 節 では,シャドウ・セットが遷移状態にあるときの性能上の考慮点を説明します。

9.2 コピー操作とマージ操作の際の性能

シャドウ・セットは,メンバに対してコピー操作やマージ操作が実行されている間は,遷移状態にあるといいます。マージ操作の際,Volume Shadowing for OpenVMS は,データを 1 つのメンバから読み込み,シャドウ・セットの他のメンバの同じ LBN に格納されているデータと同じであることを確認して,整合性を確保します。データが違っていると,シャドウイング・ソフトウェアは,入出力要求を完了させる前に,すべてのメンバの LBN をアップデートします。コピー操作の場合は,シャドウイング・ソフトウェアはソース・メンバからデータを読み込み,そのデータをターゲット・メンバの同じ LBN に書き込みます。

シャドウイング・ソフトウェアは,マージ操作やコピー操作を実行すると同時に,アプリケーションとユーザの入出力要求を処理します。コピー操作に要する入出力処理によって,同じシャドウ・セットが安定状態にあるときより,性能が低下します。ただし,シャドウ・セット・メンバが,シャドウイングの補助付きコピー操作と補助付きマージ操作をサポートしているコントローラ上に構成されている場合,シャドウ・セットがコピー操作やマージ操作を行う速度は著しく改善されます。Volume Shadowing for OpenVMS は,補助付きと補助なしの両方のマージ操作とコピー操作をサポートします。

以下のリストでは,補助なしのマージ操作やコピー操作の実行中に,シャドウ・セットがどのように性能に影響を受けるかを説明します。補助付きのコピー操作とマージ操作についての説明は, 第 6 章 を参照してください。

9.2.1 補助なしマージ操作の性能の改善

シャドウ・セット補助なしマージ操作の実行中には,読み込みの性能が低下します。マージ増倍率のデフォルト値を変更すると,マージ速度の速さを調整できます。 2 つの論理名を利用すると,補助なしマージ増倍率を変更できます。論理名のうちの 1 つはノード内にマウントされているすべてのシャドウ・セットに適用され,もう 1 つは名前を指定されたシャドウ・セットにだけ適用されます。

ノード内でマウントされているすべてのシャドウ・セットに対して, SHAD$MERGE_DELAY_FACTOR を特定の値に設定してから, SHAD$MERGE_DELAY_FACTOR_DSAnnnn を使用すると,そのノード内の 1 つ以上のシャドウ・セットに別の値を適用できます。

両方の論理名の設定を大きくすると,マージ速度を速くして,入出力速度を遅くすることになります。その反対に,両方の論理名の設定を小さくすると,マージ速度を遅くし,入出力速度を速くすることになります。

注意

マージ増倍率を 200 よりも小さくすると,マージ速度は指数関数的に低速になります。このため,マージ増倍率を小さくする場合には,その減少幅をできるだけ少なくしてください。

マージ増倍率はマージを実行中でも変更できます。ここで説明した 2 つの論理名は,マージ入出力が 1000 回完了するたびに評価されます。つまり,値を変更すると,1000 回以内のマージ入出力で変更した値が有効になります。

この次にシステム・ブートするまでの間,引き続き有効であるようにデフォルト値を変更するには,クラスタ内の各々のノードのシステム・テーブル内にこれらの論理名を定義する必要があります。マージ増倍率の有効な範囲は,100〜100,000 です。この範囲外の値を指定すると,増倍率はデフォルトの 200 になります。事前に 100〜100,000 の範囲内の値を指定していない場合は,この 200 という値が,シャドウ・セットのマージを開始するときに,%SHADOW_SERVER-I-SSRVINIMRGメッセージの中でFactorという単語に続けて表示されます。

以下に,SHAD$MERGE_DELAY_FACTOR_DSAnnnn を使用する例を示します。


    $ DEFINE SHAD$MERGE_DELAY_FACTOR_DSA42 1000     

このコマンドは,シャドウ・セット DSA42 に対して,増倍率を 1000 に設定します。このような高増倍率を指定することで,DSA42 で特定されるシャドウ・セットだけが,補助なしマージが要求された場合にマージ速度が速くなります。

以下に,SHAD$MERGE_DELAY_FACTOR を使用する例を示します。


    $ DEFINE SHAD$MERGE_DELAY_FACTOR 800     

このコマンドは,前者のコマンドを使って異なる増倍率を指定してあるシャドウ・セットを除く,ノード内でマウントされているすべてのシャドウ・セットに対して,増倍率を 800 に設定します。

注意

値が大きすぎると,マージ操作が発生したときに,アプリケーションの性能が問題になる可能性があります。値を設定する際には,システム管理者は,サイトに固有のアプリケーションのニーズとマージの必要性のバランスを考慮してください。

9.2.2 マージ操作とコピー操作の性能の改善

2 種類の性能補助機能があります。マージ補助とコピー補助です。マージ補助は,コントローラ内に記録されている書き込みログの情報を使って,シャドウ・セット全体で整合が取れていないデータだけをマージすることで性能を改善します。マージ操作が書き込みログで補助される場合,ミニマージ と呼ばれます。コピー補助は,ホスト・ノードのメモリを経由することなく,データを直接ディスク間で転送することによって,システム・リソースの使用量とコピー時間を減らします。

補助付きマージ操作は,通常,気付かないくらい短時間に終わります。 補助付きコピー操作でも,CPU とインターコネクトのリソース使用量が減るため,性能が改善されます。性能補助機能の主な目的は,コピー操作やマージ操作に必要なシステム・リソースを減らすことですが,状況によっては,読み込みや書き込みの入出力性能も改善されます。

Volume Shadowing for OpenVMS は,同じ OpenVMS Cluster 構成で,補助付きと補助無しのシャドウ・セットを両方ともサポートします。シャドウ・セットの作成,既存シャドウ・セットへのメンバの追加,またはシステムのブートのときは,いつでもシャドウイング・ソフトウェアは,変更された構成の中の各々のデバイスを再評価して,コピー補助やミニマージがサポートされているかどうかを調べます。性能の改善は,性能補助機能をサポートしているコントローラ上にすべてのシャドウ・セット・メンバが構成されているときのみ達成できます。いずれかのシャドウ・セット・メンバが,この機能をサポートしていないコントローラに接続されている場合,シャドウイング・ソフトウェアはこのシャドウ・セットでの性能補助を無効にします。

正しいリビジョン・レベルのソフトウェアがインストールされている場合,コピー補助とミニコピーがデフォルトで有効になり,シャドウイング・ソフトウェアで管理されます。

9.2.3 性能上の効果

コピー補助とミニマージは,コピー操作とマージ操作に要する時間を削減するように設計されています。実際,補助付きのコピー操作やマージ操作を実行しているときに,ユーザ入出力が少ないか,全く無いシステムでは,著しく時間が短縮されることがわかります。コピー操作によって,シャドウ・セット全体にわたって迅速にデータの整合を取ることができるので,データ可用性も改善されます。

ミニマージによる性能改善

ミニマージ機能は,マージ操作に要する時間を著しく短縮します。コントローラ・ベースの書き込みログを使うことで,初期のマージ・アルゴリズムで必要だったボリューム全体のスキャンが不要になり,ノードが障害を起こしたときに,書き込み動作が進行中であったシャドウ・セットの領域だけをマージすればよくなりました。

補助無しマージ操作は,ユーザ入出力の頻度によっては,数時間かかることがあります。ミニマージ操作は,通常,数分で完了し,ユーザが気付くことはありません。

ミニマージ操作に要する正確な時間は,マージ操作が開始されたときに貯まっている,シャドウ・セットへの書き込み動作の数と,同時にミニマージを行うシャドウ・セット・メンバの数に依存します。重い書き込み動作を行っていても,ミニマージは数分で完了します。また,ミニマージ操作では,CPU と入出力の処理能力を少ししか消費しません。

コピー補助の性能改善

コピー時間は構成によって変化し,通常,ユーザ入出力をサポートしているシステムでは時間がかかります。ソース・ディスクとターゲット・ディスクが異なる HSJ 内部バスに接続されていると,性能が向上します。

9.3 シャドウ・セットの性能を管理するためのガイドライン

9.1 節と 9.2 節では,安定状態の場合とコピー操作やマージ操作が進行中の場合の,シャドウ・セットによる性能上の影響を説明しました。一般に,安定状態のときの性能は,シャドウ化していないディスクの性能に匹敵します。性能は,シャドウ・セットのコピー操作やマージ操作が進行しているときに影響を受けます。コピー操作の場合,操作を行うタイミングは制御可能です。

しかし,マージ操作はユーザやプログラムの動作では開始されません。マージ操作は,システム障害が発生したり,アプリケーションの書き込み入出力が貯まっているシステムのシャドウ・セットがマウント検査状態になり,タイムアウトになった場合に,自動的に開始されます。この場合,シャドウイング・ソフトウェアは,動的な絞り込みを行うことによって,システム・リソースの使用量とユーザの動作への影響を減少させます。ミニマージ操作はリソースをほとんど使わないので,ユーザ動作に,少しの影響しか与えないか,全く影響を与えずすぐに完了します。

コピー操作やマージ操作で使われる実際のリソースは,シャドウ・セットのメンバ・ユニットへのアクセス・パスに依存し,さらに,これはシャドウ・セットがどのように構成されているかに依存します。両方の操作で使われるリソースは,ほとんどがアダプタとインターコネクトの入出力処理能力です。

リソースの使用量は,システムやアダプタのタイプに基づいて,適切な値を SHADOW_MAX_COPY システム・パラメータに設定することで,制御できます。SHADOW_MAX_COPY は動的なシステム・パラメータで,1 つのシステムで並列に実行できるコピーやマージのスレッドの数を制御します。特定のシステムで開始するコピー・スレッドの数がそのシステムの SHADOW_MAX_COPY パラメータをこえると,SHADOW_MAX_COPY で指定されたスレッドの数だけが,実行を許可されます。それ以外のコピー・スレッドは,現在アクティブなコピー・スレッドのいずれかが完了するまで待たされます。

たとえば,SHADOW_MAX_COPY パラメータに 3 が設定されているとします。 4 つのシャドウ・セットをマウントするときに,すべてのシャドウ・セットでコピー操作が必要であっても,3 つのコピー操作が開始されるだけです。 4 番目のコピー操作は,最初の 3 つのコピー操作のいずれかが完了するまで待たなければなりません。コピー操作は入出力処理能力を消費するため,このパラメータは並列コピー操作の数を制限する手段として使用でき,システムのインターコネクトやアダプタが飽和状態になるのを防ぎます。 SHADOW_MAX_COPY の値の範囲は,0〜200 です。デフォルト値は OpenVMS のバージョンによって異なります。

第 3 章 では,SHADOW_MAX_COPY パラメータの設定方法を説明しています。ノードで最適の値を見つけたら,MODPARAMS.DAT ファイルを編集してこの値を反映し,AUTOGEN が起動されたときに,この値が有効になるようにしてください。

SHADOW_MAX_COPY パラメータの設定の他に,以下のリストでは,リソース使用量を制御するための一般的なガイドラインと,シャドウ・セットが遷移状態のときのシステム性能への影響について説明します。

9.4 ストライピング (RAID) の実装

弊社の RAID Software for OpenVMS を使用することにより,高い入出力性能が達成されるようにディスク・ドライブを構成して使うことができます。RAID (redundant arrays of independent disks) は,ストライピング・テクノロジを使ってデータを分割し,複数のドライブに分散させます。RAID ソフトウェアは種々のレベルで使えますが,そのうちの 1 つがボリューム・シャドウイングです。 表 9-1 に RAID レベルを示します。

表 9-1 RAID レベル
RAID レベル 説明
レベル 0 冗長性のないストライピング
レベル 1 シャドウイング
レベル 0 + 1 ストライピングとシャドウイング
レベル 3 専用パリティ・ドライブによるデータのストライピング。ドライブはサイクリックに同期化される。
レベル 5 データのストライピングとパリティ
レベル 6 2 つのパリティ・ドライブによるデータのストライピングとパリティ

ストライプ化されたドライブのシャドウイングでは,性能と可用性がともに向上します。これは,ストライピングで高速な応答時間が得られ,シャドウイングでデータ冗長性が得られるためです。ストライプ化されたドライブのシャドウイングの他に,シャドウ・セットをストライプ化することもできます。各々の方式には,異なる利点があり,可用性,性能,コストに関し,トレードオフがあります。

弊社の RAID Software for OpenVMS の最新情報は, OpenVMS Web サイトの OpenVMS Products ページを参照してください。


    http://www.openvms.compaq.com    

または


    http://openvms.compaq.co.jp/    


前へ 次へ 目次 索引