テスト・システム上の SQL ステートメントを実動システム上にデプロイした場合に、これらの SQL ステートメントのアクセス・プランが同じままかどうかを調べることができます。実動システム上のいずれかのアクセス・プランを改善する必要がある場合には、問題のある SQL ステートメントをチューニングしたり、テスト・システム上で使用していたアクセス・プランに戻ったりできます。
このタスクについて
この手順では、テストしようとしているアプリケーションの SQL ステートメントの照会ワークロードを作成します。この照会ワークロードをチューニングしてから、アプリケーションを実動システムにデプロイします。次に、実動システムで、同じ SQL ステートメントの照会ワークロードを作成します。最後に、テスト・システム上の SQL ステートメントで使用されたアクセス・プランと、実動システム上のステートメントで使用されるアクセス・プランを比較します。実動システム上のアクセス・プランに有害な変化があった場合には、問題のあるステートメントの照会ワークロードを作成してチューニングしたり、テスト・システムからのアクセス・プランに戻ったりして、問題を修正できます。
次のタスク
「比較履歴」ページで、比較対象の項目をダブルクリックします。
「ワークロード EXPLAIN スナップショットおよび SQL ステートメント別に比較結果を表示」ページで、
「ステートメント」表を調べて、2 つの EXPLAIN スナップショット間で違いがあるステートメントを探します。他の人々と結果を共有する必要がある場合は、表の上の
「追加のアクション」フィールド内の
「比較 HTML レポートを生成する」を選択します。
実動システム上の SQL ステートメントのアクセス・プランか見積もりコストを改善する必要があることが判明した場合には、これらのステートメントから照会ワークロードを作成できます。その後で、照会ワークロードをチューニングできます。「ワークロード EXPLAIN スナップショットおよび SQL ステートメント別に比較結果を表示」ページ上の「追加のアクション」フィールドで、「チューニング用の新しい照会ワークロードを作成する」を選択します。
別の方法として、実動システム上のアクセス・プランを、テスト・システムのアクセス・プランで置き換えることができます。
「ワークロード EXPLAIN スナップショットおよび SQL ステートメント別に比較結果を表示」ページ上の「追加のアクション」フィールドで、「全 SQL ステートメントのアクセス・プランをロックダウンする」を選択します。この方法を選択する場合は、統計を改善したり、オプティマイザーへの改善を含む保守を適用したりするなど、アクセス・プランの改善につながり得る変更をシステムに加えても、ロックダウンしたアクセス・プランには何ら影響がないことをご理解いただく必要があります。しかし、アクセス・プランが急激に変化することはなく、その実行は予測可能なものとなります。