DSNIOSET

DSNIOSETは、パフォーマンス トレース イベントの内部処理の一部です。これは、IFCID 15レコードでの突き合わせ索引スキャンと非突き合わせ索引スキャンへの入力を記録します。IFCID 15レコードは、実行した索引スキャンに関する情報を提供します。スキャン タイプが非突き合わせの場合、またはExplainでMATCHCOLS=0が指定されていた場合、索引全体がスキャンされるため、このモジュールで大量のオーバーヘッドが発生する可能性があります。MATCHCOLS > 0の場合、索引ツリーは最初の位置のアクセスに使用され、その後この位置から順方向にリーフ ページがスキャンされます。MATCHCOLSの列数が増えると、このモジュールの使用頻度は低くなります。IFCID 18レコードは、カーソル処理ブロック(CUB)のクローズや再利用時、ファイルの終了時、またはレコードが検出されない状況で書き込まれます。このモジュールは、パフォーマンス トレースのクラスがアクティブな場合にだけ使用されます。

ヒント

このモジュールの実行時間の割合が大きい場合、索引スキャンが実行されている可能性があります。EXPLAINを使用してアプリケーションSQLを評価してください。MATCHCOLSが0の場合は、全索引スキャンが実行されます。MATCHCOLSが1以上で索引の列の数よりも小さく、索引ツリーがアクセスに使用されている場合は、一部のリーフページが順方向にスキャンされ、すべての修飾RIDが検索されます。

このモジュールの実行時間の割合が大きい場合、大量のMATCHCOLSを使用して索引付きアクセスが繰り返し実行されている可能性も考えられます。このステートメントのDSNVSRに起因するCPU時間が長くステートメントがINDEX ONLYを使用していない場合、同期入出力をセット処理と置き換えられるかどうかを評価します。

挿入活動が大量に行われる場合、挿入された行がクラスター化索引順にソートされていることを確認してください。

参考資料

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