適用対象:Azure SQL データベース
Azure portal を使って、Azure SQL Database でご利用のデータベースのパフォーマンスを最適化できるパフォーマンスの推奨事項を調べたり、ワークロードで確認された問題を修正したりすることができます。 Azure portal の [パフォーマンスの推奨事項] ページでは、潜在的な影響に基づいて上位の推奨事項を検索することができます。
推奨事項を表示する
パフォーマンスの推奨事項を表示して適用するには、Azure の適切な Azureロールベースのアクセス制御 (Azure RBAC) アクセス許可が必要です。 推奨事項を表示するには、リーダー権限と SQL DB の共同作成者権限が必要です。また、インデックスの作成または削除、およびインデックス作成のキャンセルなどのアクションを実行するには、所有者権限と SQL DB の共同作成者権限が必要です。
Azure portal でパフォーマンスに関する推奨事項を調べるには、次の手順に従います。
- Azure portal にサインインします。
- [すべてのサービス]>[SQL Database] の順に移動し、データベースを選択します。
- [パフォーマンスの推奨事項] に移動し、選択したデータベースで使用できる推奨事項を表示します。
パフォーマンスの推奨事項は、次の図のようなテーブルに表示されます。
推奨事項は、パフォーマンスへの潜在的な影響ごとに、次のカテゴリの順に表示されます。
影響 | 説明 |
---|---|
高 | 高い影響を及ぼすお勧め候補は、パフォーマンスに最も重要な影響を与えます。 |
ミディアム | 中程度の影響を及ぼすおすすめ候補は、パフォーマンスを向上しますが、それほど著しい向上ではありません。 |
低 | 低い影響を及ぼすおすすめ候補は、推奨事項を行わない場合よりも優れたパフォーマンスを提供しますが、大きくは改善されない可能性があります。 |
注
何らかの推奨事項を見つけるには、Azure SQL Database は 1 日以上アクティビティを監視する必要があります。 Azure SQL Database は、ランダムでむらのある瞬間的なアクティビティよりも、一貫性のあるアクティビティのクエリ パターンをより簡単に最適化できます。 現時点で提示できる推奨事項がない場合は、 [パフォーマンスの推奨事項] ページに、その理由を説明するメッセージが表示されます。
さらに、これまでに行った操作の状態も確認できます。 推奨事項または状態を選択すると、その詳細が表示されます。
Azure portal での "インデックスの作成" に関する推奨事項の例を次に示します。
推奨事項を適用する
Azure SQL Database では、次の 3 つのオプションのいずれかを使用して、推奨事項を有効にする方法を完全に制御できます。
- 個々の推奨事項を 1 つずつ適用する。
- 自動チューニングを有効にして推奨事項を自動的に適用する。
- 推奨事項を手作業で実装するため、推奨される T-SQL スクリプトをデータベースに対して実行する。
推奨事項を選択して詳細を表示し、[ スクリプトの表示 ] を選択して、推奨事項の作成方法の正確な詳細を確認します。
推奨設定が適用されている間、データベースはオンラインのままになります。パフォーマンスの推奨設定または自動チューニングを使っても、データベースがオフラインになることはありません。
個々の推奨事項を適用する
推奨事項は、1 つずつ確認して受け入れることができます。
- [推奨事項] ページで、推奨事項を選びます。
- [ 詳細 ] ページで、[ 適用 ] ボタンを選択します。 選んだ推奨事項がデータベースに適用されます。
一覧から推奨事項を削除する
推奨事項の一覧に削除したい項目が含まれている場合は、その項目を破棄することができます。
- [推奨事項] の一覧で推奨事項を選び、詳細を開きます。
- [詳細] ページで [破棄] を選択します。
必要な場合は、破棄した項目をもう一度 [推奨事項] の一覧に追加できます。
- 「推奨事項」 ページで 「破棄したものを表示」 を選択します。
- 破棄した項目を一覧から選択し、その詳細を表示します。
- 必要に応じて、破棄を元に戻す を選択して、インデックスを 推奨事項のメインリストに戻します。
注
Azure SQL Database の データベースの自動チューニング が有効になっていて、一覧から推奨事項を手動で破棄した場合、そのような推奨事項は自動的には適用されません。 推奨事項の破棄は、特定の推奨事項を適用しない必要がある場合にユーザーが自動チューニングを有効にできる便利な方法です。 この動作は、[破棄を元に戻す] オプションを選択して、破棄した推奨事項を推奨事項の一覧に再び追加すれば元に戻すことができます。
自動チューニングの有効化
推奨事項を自動的に実装するようにデータベースを設定できます。 推奨事項は、利用可能になると自動的に適用されます。 サービスによって管理されるすべての推奨事項と同様に、パフォーマンスに悪影響が生じる場合は、推奨事項は元に戻されます。
Azure portal で Azure SQL Database 論理サーバーに移動します。
[ インテリジェント パフォーマンス] の [ 推奨事項 ] ページで、[ 自動化] を選択します。
自動化するアクションを選択します。 目的の構成を選択したら、[ 適用] を選択します。
注
DROP_INDEX オプションは現在、パーティション切り替えとインデックス ヒントを使用するアプリケーションと互換性がありません。
T-SQL を使い手動で推奨事項を適用する
推奨事項を選択し、[ スクリプトの表示] を選択します。 データベースに対してこのスクリプトを実行し、推奨事項を手動で適用します。
手動で実行されるインデックスは、サービスによるパフォーマンスへの影響を監視および検証しません。 作成後に手動で作成されたインデックスを監視して、パフォーマンスが向上することを確認し、必要に応じてそれらを調整または削除します。 インデックスの作成方法の詳細については、「 CREATE INDEX (TRANSACT-SQL)」を参照してください。 さらに、手動で適用した推奨事項は、24 時間から 48 時間、アクティブなままになり、推奨事項の一覧に表示された後、 自動的に取り消されます。 それよりも前に推奨事項を削除したい場合は、手動で破棄できます。
推奨事項を取り消す
状態が保留中、検証中、または成功の推奨事項はキャンセルすることができます。 ただし、 実行中 の状態の推奨事項はキャンセルできないのでご注意ください。
- [チューニングの履歴] 領域の推奨事項を選択して、 [推奨事項の詳細] ページを開きます。
- 推奨事項の適用プロセスを中止するには 、[キャンセル] を選択します。
操作の監視
推奨事項の適用は、瞬時に行われない場合があります。 Azure portal には、推奨事項の状態に関する詳細が表示されます。 インデックスは次のいずれかの状態になります。
ステータス | 説明 |
---|---|
保留中 | 推奨事項の適用コマンドは受信済みで、実行が予定されています。 |
実行中 | 推奨事項は適用中です。 |
検証中 | 推奨事項が正常に適用され、サービスは効果を測定しています。 |
成功 | 推奨事項が正常に適用され、効果が測定されました。 |
エラー | 推奨事項の適用プロセス中にエラーが発生しました。 一時的な問題か、またはテーブルおよびスクリプトへのスキーマの変更が無効になっている可能性があります。 |
復元 | 推奨事項は適用されましたが、非効率なインデックスと見なされたため、自動的に元に戻されています。 |
復元済み | 推奨事項は元に戻されました。 |
詳細を表示するには、一覧からインプロセスの推奨事項を選択します。
推奨事項を元に戻す
パフォーマンスの推奨事項を使って推奨事項を適用した場合 (つまり、T-SQL スクリプトを手動で実行していない場合)、パフォーマンスへの悪影響が見つかると、変更は自動的に元に戻されます。 何らかの理由で推奨事項を元に戻すには、次の手順を実行します。
- [チューニングの履歴] 領域で、正常に適用された推奨事項を選択します。
- [推奨事項の詳細] ページで [元に戻す] を選択します。
インデックスの推奨事項のパフォーマンスへの影響を監視する
推奨事項が正常に実装された後 (現在、インデックス操作とクエリのパラメーター化に関する推奨事項のみ)、推奨事項の詳細ページ で Query Insights を選択して Azure SQL Database の Query Performance Insight を 開き、上位のクエリのパフォーマンスへの影響を確認できます。