ここまで解説した内容と最終的に特定できるSQLの種類を、テストモードごとにまとめました(表2)。
Test Executeはデータセットが必要で、実行エラーはもちろん、実行計画の変化、性能の変化を示す全てのSQLを特定できます。
Explain Planはデータセットが不要です。しかし性能が変化するSQLは特定できません。
Convert SQLSETは、STS取得環境の性能情報を結果として使うため、データセットは不要ながら、性能情報を取得できます。ただし、STS取得環境という外的要因を受けた性能値だと認識した上で、評価しなければなりません。
テストモードのうち、Test ExecuteとExplain Planの場合は「ローカルで実行」と「リモートで実行」の2パターンが選択できます(図2)。
「ローカルで実行」を選ぶと、現在ログイン中のデータベースに対して実行します(図5)。これに対し、「リモートで実行」を選択するとDBLink経由でリモートのデータベースに対して実行します。
1回目のSQL試行でConvert SQLSETを選択した場合は、2回目のSQL試行でTest ExecuteまたはExplain Planをローカルで実行することになります(図6の例1)。一方、1回目も2回目もTest ExecuteやExplain Planを選びたい場合は、2回目のSQL試行でリモート実行を選択します(図6の例2)。
図6の例2のパターンでは、SPA実行環境1、SPA実行環境2のどちらもデータベースが外的要因の影響を受けず、得られた性能値の結果を純粋に比較できます(ハードウェアに性能差がある場合を除く)。
ただし例2はコストがかかります。テスト用のハードウェアを2台準備しなければなりません。さらにDBLink先のデータベースにもRATのライセンスが必要です。
テスト実行の精度とコストをてんびんにかけ、どちらのパターンを選ぶのか、検討することをお勧めします。次回最終回では各パターンのユースケースをまとめます。SPAをコマンドで操作する方法についても解説しますので、お楽しみに。
Copyright © ITmedia, Inc. All Rights Reserved.