SPAはコマンド操作か、「Oracle Enterprise Manager(以下、EM)」(*1)から実行できます。レポートは、コマンド操作ならばテキストかHTML形式で、EMならばツール画面から確認できます(図2)(図3)。
*1:Oracle Database 12cから付属されるWebベースのツール「Enterprise Manager Database Express」の場合は、12c R2からSPAに対応しています
図2の(1)にある「エラーのあるSQL文」欄に、エラーとなったSQL文とそのエラーメッセージが表示されます。図3では、Oracle Database 11gでは実行できたSQL文が、Oracle Database 12cでは「外部結合演算子の記述位置が悪い」という理由でエラーとなった例を示しています。つまりOracle Database 12cへの移行においては、このエラーメッセージを元に、前もってこのSQLを書き換えておく作業が必要、ということですね。
図2の(2)にはSQL文のテスト結果として、「実行計画が変わらないSQL」ならばオレンジ色で、「実行計画が変わったSQL」ならば緑色のグラフで件数が表示されます。併せて、新たな環境でSQL性能が「改善」されるのか「変化なし」なのか、それとも「低下する」のかの指標が示されます。
このグラフをクリックすると、対象となるSQL文、変更前後の実行計画、性能値の比較などの詳細情報も確認できます(図4)。
最後に、SPAで性能が低下するSQLが見つかった場合には、図2の(3)の部分に「SQLチューニング・アドバイザの実行」ボタンが出現します。これは、性能が低下したSQLに対するチューニングのアドバイスを表示する「Tuning Pack」オプションとの連携機能です。表示されたアドバイスに従ってチューニングを施した環境の再テストも一連の動作で可能です。
SQLが“動作する”ことを確認できたら、今度は“正しい結果を返しているか”を確認する「機能テスト」も行いたいところですが、SPAでは残念ながら機能テストまではできません。ただしSPAでも、エラーの有無に加えて、「クエリによって返された行数の確認」は可能です(図5)。
例えば、エラーはなくても、「明らかに返された行数が少ない」などのクエリは問題がありそうだと推定できます。目視確認のための目安にはなるはずです。
以上、今回は「SPAの使い方の基礎」を動画とレポートサンプルを使って説明しました。
次回以降は、実際にSTSを取得するステップとSPAを本実行する手順を解説します。
Copyright © ITmedia, Inc. All Rights Reserved.