単一 SQL ステートメントのチューニング
DB2® for Linux, UNIX, and Windows および DB2 for z/OS® にアクセスするアプリケーションで、SQL ステートメントのパフォーマンスを改善することができます。
始める前に
ユーザーが、単一 SQL ステートメントのチューニングに必要な特権を持っている必要があります。
接続がまだ開いていない場合は、データ・ソース・エクスプローラーで、DB2 データベースまたはサブシステムに接続します。
SQL ステートメントを実行する DB2 データベースまたはサブシステムが、単一 SQL ステートメントをチューニングするように構成されている必要があります。
このタスクについて
SQL ステートメントをチューニングするためのアドバイザー、分析ツール、およびレポートの使用について既定の順序はありませんが、ユーザー独自のチューニング・シナリオの基礎にできる一般的な順序があります。
手順
ほとんどの場合、SQL ステートメントのチューニングは以下の手順に従って行うことができます。
チューニングする SQL ステートメントをキャプチャーします。
単一照会チューニング用の SQL ステートメントをキャプチャーできる場所
を参照してください。
接続されたデータ・サーバー上でチューニング用のライセンスが活動化されている場合、以下の手順で SQL ステートメントのチューニングを行います。
問題のステートメントをフォーマット設定し、注釈を付けて、ステートメントを読みやすく、分かりやすいようにします。
注釈では、DB2 オプティマイザーがアクセス・プランを生成する際にどの情報を使用しているかを理解するのに役立つ、関連の統計を表示します。
SQL ステートメントのフォーマット
を参照してください。
以下のステップの一方または両方に従います。
アクセス・プランのビジュアル表示を生成して、オプティマイザーがデータにアクセスする際に行う選択を表示します。
アクセス・プランのビジュアル表示の生成
を参照してください。
アクセス・プラン・エクスプローラーを使用してアクセス・プランを参照し、問題がないか調べます。
アクセス・プラン・エクスプローラーによるアクセス・プランの参照
を参照してください。
統計アドバイザーを実行してその推奨情報に従い、DB2 オプティマイザーが常に最新の最も必要とされる統計を持っているようにします。
SQL ステートメントのアクセス・パス内にあるデータベース・オブジェクト用の統計収集に関する推奨情報の生成とそれに基づく対応
を参照してください。
索引アドバイザーを実行してその推奨情報に従い、不要な表スキャンを避けるのに役立つ適切な索引が存在するようにします。
単一 SQL ステートメントのパフォーマンス改善のための索引に関する推奨情報の生成とそれに基づく対応
を参照してください。
照会アドバイザーを実行してその推奨情報に従い、DB2 オプティマイザーが次善のアクセス・パスを選択する原因になる可能性があるステートメント内の構造を検出して修正します。
パフォーマンス改善のための SQL ステートメントの改訂に関する推奨情報の生成とそれに基づく対応
を参照してください。
アクセス・パス・アドバイザーを実行して、DB2 オプティマイザーがステートメントを処理するために次善のアクセス・パスを使用しているかどうかを調べます。その後、アドバイザーの推奨情報に従います。
SQL ステートメントのアクセス・パスの変更に関する推奨情報の生成とそれに基づく対応
を参照してください。
DB2 オプティマイザーが引き続き次善のアクセス・パスの使用する場合、アクセス・パスの選択に関して明示的な指示をオプティマイザーに提供する、プラン・ヒント (DB2 for z/OS の場合) または最適化プロファイル (DB2 for Linux, UNIX, and Windows の場合) を作成、検証、およびデプロイします。
DB2 for z/OS の場合は、
DB2 for z/OS で実行される SQL ステートメント用のプラン・ヒントの作成およびデプロイ
を参照してください。
DB2 for Linux, UNIX, and Windows の場合は、
DB2 for Linux, UNIX, and Windows で実行される SQL ステートメント用の最適化プロファイルの作成およびデプロイ
を参照してください。
接続されたデータ・サーバー上でチューニング用のライセンスが活動化されていない場合、以下の手順で SQL ステートメントのチューニングを行います。
注:
IBM® Data Studio を使用している場合、データ・サーバー上ではライセンスは活動化されません。
SQL ステートメントをフォーマット設定して、ステートメントを読みやすく、分かりやすいようにします。
フォーマット済みバージョンの SQL ステートメントを見ると、未フォーマット・バージョンでは明白でなかったものを見抜けることがあります。
SQL ステートメントのフォーマット
を参照してください。
SQL ステートメントのアクセス・プラン・グラフを分析して、ステートメントが参照するオブジェクト内のデータに DB2 がアクセスする方法を見つけます。
アクセス・プランのビジュアル表示の生成
を参照してください。
統計アドバイザーを実行してその推奨情報に従い、DB2オプティマイザーが最新の最も重要な統計を持っているようにします。
SQL ステートメントのアクセス・パス内にあるデータベース・オブジェクト用の統計収集に関する推奨情報の生成とそれに基づく対応
を参照してください。
単一照会のチューニングのための Query Tuner プロジェクト
フィードバック