Db2アプリケーションのパフォーマンス分析

プログラムCPU使用レポートを開き、.SYSTEMを展開します。.Db2疑似モジュールに顕著な活動が見られる場合は、呼び出されたモジュールを調べるか、SQLステートメントに起因するCPUおよび待ち時間を分析します。

呼び出されたモジュールの検証

測定中に呼び出されたDb2サービス モジュールを調べるには、.Db2を展開して、CPUを消費しているDb2システム サービス モジュールの活動の内訳を表示します。次にCPU時間の属性レポートを開き、それらのDb2システム サービス ルーチンの呼び出し元であるSQLステートメントが特定できるまで項目を展開していきます。そのあとは、SQLステートメントのCPU使用にフォーカスして分析できます。

SQL CPU使用の検証

SQL関連のCPU使用を調べるには、照会別活動レポートを開きます。

  • 大量のCPU時間を消費している照会、プロシージャー、またはパッケージを特定します。資源を消費している項目を展開して、Db2システム サービスを呼び出した照会内のCPU活動の分布を表示します。どのSQLステートメント番号がCPUの高消費に関与しているか調べ、そのステートメントの実行時間統計とテキストを検証します。このときSQLコードに非効率的な部分が見つかるかもしれません。StrobeでSQL Analysisレポートを作成するように指定した場合には、[SQLステートメント分析]ボタンをクリックしてそれらを表示し、コードを改善する方法を調べます。

  • 資源消費率が高いSQLステートメントを特定できたら、[呼び出されたサービス]セクションを検証して、そのSQLステートメントに関与するDb2システム サービスを調べます。

Db2待ち時間の分析

何が待ち時間の原因となっているかを調べるには、モジュール別待ち時間レポートを開き、.SYSTEMを展開します。  .NUCLEUSの下にDb2待ち時間が表示されます。  .NUCLEUSを展開すると、多くの場合、MVSモジュールIEAVEPS1(Postサービス)があります。ここで待ち時間属性に移動して、Db2の何が待ち時間を発生させているかを調べます。

  • .Db2によって発生した待ち時間が顕著な場合には、照会別活動レポートを検証して、どの照会、プロシージャ、パッケージが長い待ち時間に関与しているかを調べます。項目を展開して、Db2システム サービスを呼び出した照会内の待ち時間の分布を表示します。どのSQLステートメント番号が長い待ち時間に関与しているか調べ、そのステートメントの実行時間統計とテキストを検証します。このときSQLコードに非効率的な部分が見つかるかもしれません。StrobeでSQL Analysisレポートを作成するように指定した場合には、[SQLステートメント分析]ボタンをクリックしてそれらを表示し、コードを改善する方法を調べます。

  • 資源消費率が高いSQLステートメントを特定できたら、[呼び出されたサービス]セクションを検証して、そのSQLステートメントに関与するDb2システム サービスを調べます。

  • .Db2以外の疑似モジュールによって発生した待ち時間が顕著な場合には、CICSおよびIMSのヒントを参照してください。