DSNVSR

モジュールDSNVSRは、DB2タスクの一時停止/再開/同期の取り消しを制御します。このモジュールは、関連エージェント(ユーザー)のアドレス スペースの代わりに稼働する、エージェント サービスの管理ルーチンの一部です。これらのサービスには、作成/終了、タスクの切り替え、同期化、およびラッチ管理があります。

ヒント

以下の条件によって、DSNVSRに待ち時間が発生します。

  • 他のユーザーによって非互換モードでロックされたDb2オブジェクトの待ち

  • 同期入出力の待ち

  • 表スペースや索引スペースのオープンなどのサービス タスク待ち

バッファー プールのヒット率を向上させることによって、同期入出力の待ち時間は短縮できます。DSNB5RDP(GET PAGE REQUESTS)に関係付けられたCPU時間は、ページ取得要求(DSNB1GET)がバッファー プールのページで満たされていないことを示します。バッファーのヒット率が低いことによって入出力待ちが発生している場合、EXPLAINを使用して問題のSQLステートメントのアクセス パスを検証してください。EXPLAINが許容されるアクセス パスを示す場合、使用した任意の索引の実際のクラスター率を確認して、バッファー プールのヒット率への影響を評価します。

非同期プリフェッチを多用すると、入出力待ちの時間は短縮されますが、オンライン アプリケーションには適切でない場合があります。

ステートメントのアクセス パスが有効でプリフェッチを含み、使用される索引が適切なヒット率を取得している場合、バッファー プールの統計を分析して、バッファー プールが作業負荷を効率的に処理しているかどうかを判別します。

ファイル オープンのサービス タスク待ちは、CLOSE YESを使用せずにセグメント化された表スペースを使用し、DEFERREDCLOSE PROCESSINGを活用することによって短縮できます。これを実行するには、オープンした状態で常に使用されているCLOSE NOデータセットの数とCLOSE YESデータセットの最大数の合計を超える値を、DSNMAXに設定します。

クラス3アカウンティングをオンにすると、DSNVSRでの長い待ち時間の詳細を表示できます。DB2 Performance Monitor(DB2パフォーマンス モニター)レポートには、一時停止中の活動のタイプが、さまざまなイベント(LOCK/LATCH SUSPENSIONS、SYNC I/O SUSPENSIONSなど)と共にSUSPENSIONS/SYSTEM EVENTSカラムに表示されます。また、これらのイベントをさらに分析できます。たとえば、Lock Suspensions Summary(ロック停止要約)レポート、Lock Contention Summary(ロック競合要約)レポート、およびLock Contention Trace(ロック競合トレース)レポートで、LOCK/LATCH SUSPENSIONSの詳細がわかります。Accounting Summary(アカウンティング要約)レポートでバッファー プールのヒット率を検証したり、Buffer Pool Statistics(バッファー プール統計)レポートを分析できます。Strobe CICS Performance Supplement(CICSパフォーマンス補足)レポートを参照してください。

参考資料

『IBM Db2 for OS/390, Messages and Codes(GC26-8979)』

『IBM Db2 for OS/390, Application Programming and SQL Guide(SC26-8958)』

『IBM Db2 for OS/390, Administration Guide(SC26-8957)』