DB2 Version 9.7 for Linux, UNIX, and Windows

FP1: 演算子カーディナリティーの実際の値を使用した Explain の拡張

バージョン 9.7 フィックスパック 1 以降、セクションの実行中にアクセス・プラン演算子に関するランタイム統計を集めることができるようになりました。 これらの統計は、セクション実行時統計と呼ばれます。 フィックスパック 1 で使用可能な統計は、アクセス・プラン演算子のカーディナリティーのみになります。

Explain 機能の出力は、比較のためにセクション実行時統計と推定アクセス・プラン値の両方を表示するので便利です。 この比較の結果が、オプティマイザーによって使用された古い統計をポイントしていて、正しくないアクセス・プランが選択されることがあります。 その場合は、RUNSTATS コマンドを使用してから、最新のアクセス・プランが用意された状態でアプリケーションを再試行することにより、統計を更新するための処置をとることができます。 セクション実行時統計は、セクションの Explain が実行され、アクティビティー・イベント・モニターを使用してセクションがキャプチャーされた場合のみ使用可能になります。
注:
  • section_actuals データベース構成パラメーターを使うか、特定のアプリケーションに対して WLM_SET_CONN_ENV プロシージャーを使って、セクション実行時統計を使用可能にする (BASE に設定する) 必要があります。データベース構成で統計プロファイル自動生成 (auto_stats_prof) が使用可能になっている場合、セクション実行時統計を使用可能にすることはできません (SQLCODE -5153)。
  • アプリケーションに対して WLM_SET_CONN_ENV プロシージャーで指定された section_actuals 設定は、即時に有効になります。このアプリケーションによって発行される次のステートメントに関するセクション実行時統計が収集されます。

セクション実行時統計の情報を収集する機能は、SQL 照会のパフォーマンス低下を解決するのに役立つことがあります。