適用対象:SQL Server
Azure SQL Managed Instance
SQL Server Management Studio バージョン 17.2 以降には、パフォーマンス ダッシュボードが含まれています。 このダッシュボードは、SQL Server と Azure SQL Managed Instance のパフォーマンスの状態を視覚的に把握できるように設計されています。
パフォーマンス ダッシュボードは、SQL Server または Azure SQL Database にパフォーマンスのボトルネックが存在するかどうかを迅速に特定するのに役立ちます。 ボトルネックが見つかった場合は、問題を解決するために必要な追加の診断データを簡単にキャプチャできます。 パフォーマンス ダッシュボードが特定するのに役立つ一般的なパフォーマンスの問題には、次のようなものがあります。
- CPU のボトルネック (および、CPU を最も消費しているクエリ)
- I/O ボトルネック (および、I/O を最も実行しているクエリ)
- クエリ オプティマイザーによって生成された推奨インデックス (不足しているインデックス)
- ブロック
- リソースの競合 (ラッチの競合を含む)
パフォーマンス ダッシュボードは、以前に実行された可能性のあるコストの高いクエリを特定するのにも役立ち、CPU、論理書き込み、論理読み取り、期間、物理読み取り、CLR 時間など、高コストを定義するためにいくつかのメトリックを使用できます。
パフォーマンス ダッシュボードは、次のセクションおよびサブレポートに分かれています。
システム CPU 使用率
現在待機中の要求
現在のアクティビティ
- ユーザーの要請
- ユーザー セッション
- キャッシュ ヒット率
履歴情報
- 待機
- ラッチ
- I/O 統計
- コストの高いクエリ
その他の情報
- アクティブなトレース
- アクティブな XEvent セッション
- データベース
- 欠落したインデックス
Note
内部的には、パフォーマンス ダッシュボードでは、 実行関連の動的管理ビューと関数、 インデックス関連の動的管理ビューと関数、および動的管理ビュー (DMV) および関数 (DMF) に 関連する I/O 関連の動的管理ビューと関数 が使用されます。
パフォーマンス ダッシュボードを表示する
パフォーマンス ダッシュボードを表示するには、オブジェクト エクスプローラーで SQL Server インスタンス名を右クリックし、[ レポート]、[ 標準レポート] の順に選択し、[ パフォーマンス ダッシュボード] を選択します。
パフォーマンス ダッシュボードが新しいタブとして表示されます。CPU のボトルネックが明確に存在する例を次に示します。
解説
[欠落したインデックス] レポートでは、クエリのコンパイル中にクエリ オプティマイザーによって識別された、欠落の可能性があるインデックスが表示されます。 ただし、これらの推奨事項は額面的には考慮しないでください。 Microsoft では、スコアが 100,000 を超えるインデックスは、ユーザー クエリで予想される改善が最も高いため、作成のために評価することをお勧めします。
ヒント
新しいインデックスの提案が同じテーブル内の既存のインデックスに匹敵するかどうかを常に確認します。テーブルでは、新しいインデックスを作成するのではなく、既存のインデックスを変更するだけで実際に同じ結果が得られることがあります。 たとえば、 C1、 C2 、および C3の列に対して新しい推奨インデックスがある場合は、最初に列 C1 と C2に対する既存のインデックスがあるかどうかを評価します。 その場合は、新しいインデックスを作成しないように、既存のインデックスに列 C3 を追加することをお勧めできます (既存の列の順序を維持します)。 詳細については、「SQL Server と Azure SQL のインデックスのアーキテクチャとデザイン ガイド」を参照してください。
[待機] レポートでは、アイドル待機とスリープ待機のすべてが除外されます。 待機の詳細については、「待機とキューを使用した sys.dm_os_wait_stats および SQL Server 2005 パフォーマンス チューニング」を参照してください。
基になる DMV 内のデータがクリアされたために SQL Server が再起動すると、[コストの高いクエリ] レポートはリセットされます。 SQL Server 2016 (13.x) 以降のバージョンでは、コストの高いクエリに関する詳細情報がクエリ ストアにあります。
Note
SQL Server Management Studio レポート レンダラーでは、レポートに含まれるテキストへのクリップボード アクセスはサポートされていませんが、スタンドアロン レポートを使用してテキストにアクセスできます。 レポートからクエリ テキストをコピーする必要がある場合は、スタンドアロン レポートをダウンロードします。
アクセス許可
SQL Server には、 VIEW SERVER STATE と ALTER TRACE のアクセス許可が必要です。
Azure SQL Managed Instance には、データベースの VIEW DATABASE STATE アクセス許可が必要です。