統計アドバイザー

統計アドバイザーは、SQL ステートメントのパフォーマンス改善のために推奨される統計の収集に関するエキスパート・アドバイスを提供します。

ほとんどのデータベース管理システムには、データベース内のデータに関する統計を使用して SQL ステートメント処理の最も効率的な実行方針を判別する照会オプティマイザーが存在するため、データベース統計は照会パフォーマンスにとって重要です。通常、統計には、表内の行の数と特殊値の数、最大の頻度、および列内の値の分布に関する情報が含まれます。 オプティマイザーは、これらの統計を使用して、アクセス・プランの各手順についてカーディナリティーまたは処理される行数を計算します。 そのため、不完全な統計、古い統計、または競合する統計が存在すると、オプティマイザーが照会プランの手順のコストについて不正確な見積もりを提示する場合があります。 多くの場合、オプティマイザーは不適切なアクセス・プランを選択し、その結果照会処理に長い時間がかかってしまいます。

統計アドバイザーでは、統計情報の収集または修復に使用できる RUNSTATS コマンドを推奨しています。収集された統計情報は、オプティマイザーが効率のいいアクセス・パス を選択するために役立つことがあります。 ただし、推奨される統計情報を収集した後でも、オプティマイザーが同じアクセス・パス を選択することはあります。

それぞれの推奨情報には優先順位があります。 優先順位には、以下の意味があります。
このタイプの推奨情報は、重要な統計が欠落している、古い、または統計間で競合していることを示します。
保守 (Maintenance)
このタイプの推奨情報は、最も低い優先順位であり、カタログ統計が完全かつ正確であることを示します。 推奨情報では、保守サイクルに定期的に組み込み、関連統計の正常性を保守するための RUNSTATS ジョブが提示されます。

データ・サーバーで RUNSTATS ユーティリティーを呼び出すために必要な権限および特権がある場合、Query Tuner Client から統計を直接キャプチャーできます。 推奨された RUNSTATS ステートメントをコピーまたはファイルに保存するか、取得対象のデータ・サーバー上のプロファイル表に保存して、後で実行したり、チームの別のメンバーにより実行することもできます。 統計プロファイルに保存されている RUNSTATS コマンドも比較のために表示されます。 RUNSTATS コマンドを毎回実行および保存すれば、特定の表に対して実行された最新の RUNSTATS コマンドを常に参照できます。

他のアドバイザーに進む前に、統計アドバイザーを再実行し、高い推奨情報をすべて解決するまで、推奨された統計をキャプチャーする必要があります。 他の単一照会アドバイザーは、推奨情報を作成する際、統計が正確であることを前提としています。新規アクセス・プラン・グラフを生成し、元のアクセス・プラン・グラフと比較すると、 アクセス・パスが変更されたかどうかを確認できます。


フィードバック