Azure SQL Database で待ち事象を調査する「sys.dm_db_wait_stats」

sys.dm_db_wait_statsとは

SQL Serverでは、OS全体の待ち事象状況を確認するための動的管理ビューとして、「sys.dm_os_wait_stats」が提供されています。
Windows Azure SQL Databaseの場合、共有モデルで提供されているので、サーバー全体の待ち事象を確認できてもうれしいことが無いため、提供されていませんでした。

各データベースごとの待ち事象を確認できることは意味があるので、Windows Azure SQL Database用にデータベースの待ち事象を確認できるように、「sys.dm_db_wait_stats」が提供されるようになりました。

sys.dm_db_wait_statsの説明

sys.dm_wait_stats では、既に終わった待機時間が示されます。この動的管理ビューでは、現在待機中の待機時間は示されません。
クエリ実行中に発生している待機時間の種類によって、クエリにボトルネックや機能停止ポイントがあるかどうかを判断できます。

列名 説明
wait_type 待機の種類の名前。 詳細については、このトピックの「待機の種類」を参照してください。
waiting_tasks_count この待機の種類における待機の数。 このカウンターは、待機が開始するたび増加します。
wait_time_ms この待機の種類における総待機時間 (ミリ秒単位)。 この時間には signal_wait_time_ms が含まれます。
max_wait_time_ms この待機の種類における最大待機時間。
signal_wait_time_ms 待機スレッドがシグナルを受け取ってから実行を開始するまでの時間。

 

DBCC SQLPERF (‘sys.dm_db_wait_stats’, CLEAR);
によるカウンターリセットには対応していません。

参考情報