Db2 トレース・データのボリュームの最小化

Db2 トレースが収集するデータの量は、かなり大きくなる可能性があります。 その結果、ユーザーが要求するトレース・レコード数が、システム・パフォーマンスに影響を与えることがあります。

プロシージャー

プログラム固有のプログラミングインターフェース情報の開始。トレース・データのボリュームを最小化するには、

  • トレースの開始時に適切な制約とフィルターを指定します。
    これにより、トレース・データの収集を特定のアプリケーションまたはユーザーに制限したり、収集されたデータを特定のトレースとトレース・イベントに制限したりすることができます。 トレース制約 を使用すれば、収集されたデータの有効範囲を特定のコンテキストおよび特定のトレースとトレース・イベントに制限できます。 同じように、トレース・フィルター を使用すれば、トレース・データの収集を特定のコンテキストから除外したり、特定のトレースとトレース・イベントの収集を除外したりすることができます。

    例えば、コレクション ID、パッケージ名、ロケーション名、ワークステーション名、許可 ID、ユーザー ID、ロールなど、アプリケーションおよびユーザー属性を使用して、制約とフィルターを指定することができます。 また、制約とフィルターを使用して、トレース・データの収集を特定のトレース・クラスおよび特定のトレース・イベント (IFCID) に制限することもできます。 利用可能な制約およびフィルタオプションの完全なリストについては、-START TRACE コマンド( Db2 )を参照してください。

  • パフォーマンス・トレースを開始するとき、何を報告することが必要か 確認してください。
    例えば、入出力のみまたは SQL のみ。 どのクラスがどのレポートを生成するかについては、IBM® OMEGAMON® for Db2 Performance Expert on z/OS® をご参照ください。 この確認を怠ると、不完全なレポートが作成されたり、再実行が必要に なったり、あるいは必要以上のデータが収集されてデータ収集機能に 負担を掛ける可能性があります。
  • デフォルトの統計情報収集頻度またはそれより小さい値を使用してください。
    特定の統計では、1 分の統計間隔が適用されます。 統計トレースがアクティブになっていると、統計は SMF によって 常時収集されます。
  • アカウンティング・データを、継続的に収集する必要があるかどうかを決定してください。
    トランザクション・マネージャーが十分なアカウンティング情報を提供している場合は、Db2アカウンティングが必要ない場合があります。 プロセッサーの負荷が大きい環境では、アカウンティング・トレースを継続的に稼働させない ようにすることを考慮してください。
  • アカウンティングを継続的に使用するときは、SMF (インストール・パネル DSNTIPN の SMF ACCOUNTING) に対しクラス 1、2、および 3 を 開始してください。
  • 最小のパッケージ・アカウンティング情報を収集するには、アカウンティング・トレースのクラス 7 および 8 を開始します。
    パッケージについて、SQL ステートメントやロッキングなど、さらに詳細なアカウンティング情報が必要な場合は、 アカウンティング・トレースのクラス 7、8、および 10 を開始します。 パッケージの会計は、CPUコストを追加で発生させ、SMF会計トレースの量を増やします。 records.If パッケージに必要なのは最小限の会計情報だけなので、クラス7の会計のみを開始します。
  • ACCUMACC および ACCUMUID サブシステム・パラメーターの値を使用して、DDF および RRSAF アカウンティング・レコードをロールアップできます。 レコードのロールアップにより、アカウンティング・データのボリュームが削減されます。

    ただし、ロールアップされたアカウンティング・レコードの使用にはトレードオフが発生することに注意してください。 レコードのロールアップにより、データの細分度が失われます。つまり、パフォーマンスの悪い、平均値から離れたトランザクションに関する情報は、ロールアップされたデータでは失われる可能性が高くなります。

    パフォーマンス分析を必要とする特定の問題がない場合は、デフォルトの ACCUMACC 値および ACCUMUID 値から開始して 10 アカウンティング間隔ごとに 1 つのアカウンティング・レコードを書き込みます。 詳細なアカウンティング・データを必要とするパフォーマンス上の問題が発生している場合は、ACCUMACC 値を NO に更新します。 パフォーマンス上の問題が解決したら、ACCUMACC 値を 10 に戻すことができます。 同様に、ACCUMACC 値を 10 に設定して生成されるアカウンティング・トレース・データのボリュームが大きすぎる場合で、RRSAF アプリケーションや分散アプリケーションに関するパフォーマンス上の問題の履歴がない場合には、ACCUMACC 値をより大きい値に設定できます。

  • CPUに制約のある環境で、 Db2 ラッチの競合が過剰(毎秒1000以上)に発生する場合は、CPUリソースを節約するために、一時的にアカウンティングクラス3と8をオフにして、ラッチの競合問題を後で解決することができます。
  • パフォーマンス・トレースを短期間だけ使用し、START TRACE コマンドで適切な制約とフィルターを指定して収集されるデータ量を制限します。 トレース情報をすぐに分析できるようにする場合は、デフォルト宛先 GTF を 使用してください。
  • 問題が調査中で、 IBM サポートがトレースを要求した場合のみ、グローバルトレースを開始します。
    プログラム固有のプログラミングインターフェース情報を終了します。