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