検索
連載

SPA実行編――短い工数で正確にSQLをテストする【12c対応】とにかく苦労しない「RAT」簡単攻略テクニック(4)(3/3 ページ)

とにかく大変なデータベースバージョンアップ時の「SQLテスト」。本連載では、この課題を解決するOracle Databaseのオプション機能である「Oracle Real Application Testing(RAT)」と、その一機能である「SQL Performance Analyzer(SPA)」の攻略方法を紹介していきます。今回はSPAを使った新環境側でのテストの手順を解説、加えてチューニングと再テストの方法を扱います。

Share
Tweet
LINE
Hatena
前のページへ |       

影響度順にソートして性能結果に優先順位を付ける

 Enterprise Managerが出力したSPAの結果レポートの読み方を説明しましょう。図7の上の画面ではSQLごとに2種類の「影響」を表示しています。

 個々のSQLの性能値がどの程度変化したのかを示しているのが、「SQLに対する最終的な影響」です(図7の1)。元の性能値からどれくらい性能が変化したのかを、数値(%)で表しています。

 実行頻度も考慮の上、全体のワークロードに対して個別のSQLが与える影響度を「ワークロードに対する最終的な影響」で示しています(図7の2)。

 Enterprise Managerのデフォルトではこの「ワークロードに対する影響度」の絶対値でSQLをソートし、上位10件を表示します。

 絶対値でソートするため、性能が劣化したものと改善したものが一覧に混ざっています。しかしHTML形式で出力したレポート画面では、劣化を「オレンジ色」、改善を「緑色」で塗り分けるため、一目で確認できます。このレポートでは実行頻度の値も表示します。

図7
図7 Enterprise Managerとコマンド操作でのレポート画面例

 実行頻度が高く、劣化の度合いが高いSQLをすぐに見つけることができました。個別にSQLを評価して優先順位付けをする手間もなく、効率よくチューニングのフェーズに移ることができます。

チューニングと再テストも一連の流れで実行可能

 性能が劣化するSQLをSPAのレポートで見分けた後は、チューニングの工程が控えています。SPAはTuning Packオプションの「チューニング・アドバイザ機能」と連携するため、チューニングを簡単に施すことができます。

 その後、SPAを再実行してチューニングが有効だったかどうか、他のSQLに悪影響を与えていないかも、チェックできます。こちらもEnterprise Managerを用いた一連の手順を動画で確認してみてみましょう(動画4)。

動画が取得できませんでした
動画4 チューニングと再テストの実行手順

 いかがでしたか。動画ではチューニング・アドバイザが提示した索引を作成しましたが、問題があるSQLを1本だけテストするのではなく、全てのSQLに対して簡単にテストできることが分かりました。

 このように「テスト、チューニング、テスト」というステップを繰り返すことで、システムの品質を向上できます。移行に対して不安を持つデータベース管理者にはありがたい機能です。

 次回は連載の山場、SPA実行での各設定内容を詳細にご説明します。お楽しみに。

筆者紹介

長内麻記(おさない まき)

photo

株式会社アシスト所属 入社以来、Oracle Database一筋。2017年現在はOracle Databaseのお役立ち機能を分かりやすく、楽しく伝えることを目標に活動中。10代の頃の夢は動画クリエーター。当時の知識を生かし、機能解説動画を自作することもある。好きなOracleオプションはReal Application Testing。好きな食べ物はギョーザ。


Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る