推奨された索引およびユーザーが提案する索引を、最初に作成せずにテストすることができます。各テストの結果では、索引によって現行 SQL ステートメントのパフォーマンスが改善されるかどうか、索引のために必要なディスク・スペースの見積もり、および DB2® オプティマイザーが現行の SQL ステートメントのアクセス・パスに索引を使用するかどうかが示されます。
手順
推奨された索引およびユーザーが提案する索引を仮想的にテストするには、以下の手順を実行します。
- 単一 SQL ステートメントのみをチューニングする場合は、以下の手順に従います。
- チューニングする SQL ステートメントをキャプチャーします。単一照会チューニング用の SQL ステートメントをキャプチャーできる場所を参照してください。
- ステートメントを選択して、「ステートメントのチューニング」ボタンをクリックします。
「呼び出し」セクションに、「単一照会アドバイザーおよび分析ツールの実行」ページが開きます。
- ステートメントのアクセス・プランに含まれるオブジェクトの統計が最新のものかどうかはっきりしない場合は、統計アドバイザーを実行し、推奨される RUNSTATS 制御ステートメントを実行します。続いて、「単一照会アドバイザーおよびツールの実行」ページで「照会の再 EXPLAIN」オプションを選択した後、統計アドバイザーを再実行して、追加の推奨情報がないことを確認します。
- 照会ワークロードのチューニングで、その照会ワークロードに含まれる単一 SQL ステートメントのための索引を仮想的にテストする場合は、以下の手順に従います。
- 照会ワークロードのアクセス・プランに含まれるオブジェクトの統計が最新のものかどうかはっきりしない場合は、ワークロード統計アドバイザーを実行し、推奨される RUNSTATS 制御ステートメントを実行します。続いて、「ワークロード・アドバイザーの実行」ページで「照会の再 EXPLAIN」オプションを選択した後、ワークロード統計アドバイザーを再実行して、追加の推奨情報がないことを確認します。
- ワークロードの「ステートメントの表示」ページで、ステートメントをソートして、パフォーマンス要件を満たしていないステートメントを見つけます。 このページは、「管理」セクションで開くことができます。
- ステートメントを右クリックし、「選択したステートメントでの単一照会アドバイザーおよびツールの実行」を選択します。
- ユーザーが提案する索引のみをテストする場合: ワークフロー・アシスタントの左側で、「単一照会」の下の「拡張」を展開します。「候補索引のテスト」を選択します。「候補索引のテスト」ページが開きます。
- 索引アドバイザーが推奨する索引とユーザーが提案する索引の両方をテストする場合は、以下の手順に従います。
- 「単一照会アドバイザーおよびツールの実行」ページで「照会の再 EXPLAIN」オプションを選択します。
- 索引アドバイザーを実行して、新規索引に関する推奨情報を生成します。
- 索引アドバイザーが推奨情報を生成した場合、「確認」セクションの「単一照会アドバイザーの推奨情報の確認」ページで、「サマリー」表内の「索引」行をダブルクリックします。
「索引」セクションが開きます。
- 「候補索引のテスト」ボタンをクリックします。
- 「候補索引のテスト」ページで、仮想的にテストする索引を選定します。
- 「候補索引」表
- 索引アドバイザーを実行した場合、推奨される新規索引がこの表にリストされます。これらの索引定義を編集することも、そのままにすることもできます。
「索引の追加」アイコンをクリックして、ユーザー独自の索引を表に追加し、編集できます。
- 「既存の索引」表
- ユーザーの参照用として、この表には現行 SQL ステートメントが参照する表の既存の索引がすべてリストされます。
- この表には「仮想ドロップ」という見出しの列があります。仮想テストに含めない既存の各索引のチェック・ボックスを選択してください。
以下のケースでは、このチェック・ボックスがデフォルトで選択されます。
- 索引の変更が推奨されていて、置き換える索引が「候補索引」表にある。
索引アドバイザーが変更を推奨する索引は、テストに含めることができません。
- 索引をドロップすることが推奨されている。
チェック・ボックスを選択解除すれば、索引をテストに組み込むことができます。
- 仮想的にテストする索引を追加し、編集した後で、「候補索引のテスト」ボタンをクリックします。
- 「候補索引のテスト」ウィンドウで、索引用に統計をカスタマイズするか、デフォルト統計のままにします。
また、ステートメントのアクセス・プラン・グラフの生成を選択することもできます。このグラフは、テストに含まれる索引が新規アクセス・プランに含められるかどうかを示します。その後、「OK」をクリックして、テストを実行します。
タスクの結果
ワークフロー・アシスタントの左上隅に、「候補索引のテスト n」というタイトルの項目が表示されます。ここで、n は、単一 Query Tuner プロジェクト内で同じ SQL ステートメントに対してテストを実行するたびに 1 つずつインクリメントされる数値です。
アクセス・プラン・グラフの生成を選択した場合は、そのグラフが表示されます。「候補索引のテスト結果の確認」を開くには、ワークフロー・アシスタントの左側で「候補索引のテスト」を選択します。
アクセス・プラン・グラフの生成を選択しなかった場合は、「候補索引のテスト結果の確認」ページが開きます。このページには、テストした索引がリストされ、各索引がアクセス・プランで使用されたかどうかが示されます。
次のタスク
テストした索引のうちの 1 つ以上を作成することに決定した場合は、索引を右クリックして、「DDL の表示」を選択します。DDL をコピーまたは保存して、ワークフロー・アシスタントの外部でその DDL を実行できるようにします。作成する索引ごとに、このステップを繰り返します。
もう一度テストを実行する場合は、ワークフロー・アシスタントの左上隅の、対応する「分析結果 n」項目をクリックして、索引アドバイザーから推奨情報に戻ります。