sys.query_store_wait_stats (Transact-SQL)
適用対象: SQL Server 2017 (14.x) 以降 Azure SQL データベース
クエリの待機情報に関する情報が含まれます。
列名 | データ型 | 説明 |
---|---|---|
wait_stats_id | bigint | plan_id、runtime_stats_interval_id、execution_type、および wait_category の待機統計を表す行の識別子。 これは、過去のランタイム統計間隔に対してのみ一意です。 現在アクティブな間隔では、plan_id によって参照されるプランの待機統計を表す複数の行がある可能性があり、実行の種類は execution_type で表され、待機カテゴリは wait_category で表されます。 通常、1 つの行はディスクにフラッシュされる待機統計を表し、その他はメモリ内の状態を表します。 そのため、間隔ごとに実際の状態を取得するには、メトリックを集計し、plan_id、runtime_stats_interval_id、execution_type および wait_category でグループ化する必要があります。 |
plan_id | bigint | 外部キー。 sys.query_store_plan (Transact-SQL) に結合。 |
runtime_stats_interval_id | bigint | 外部キー。 sys.query_store_runtime_stats_interval (Transact-SQL) に結合。 |
wait_category | tinyint | 待機の種類は次の表を使用して分類され、待機時間はこれらの待機カテゴリ全体で集計されます。 問題の解決に必要なフォローアップ分析は待機カテゴリによって異なりますが、同じカテゴリの待機の種類からはよく似たトラブルシューティング エクスペリエンスが得られ、待機の他に影響を受けたクエリを提供することは、このような調査の大部分を正常に完了するために不足している部分です。 |
wait_category_desc | nvarchar(128) | 待機カテゴリ フィールドのテキストの説明については、次の表を確認してください。 |
execution_type | tinyint | クエリ実行の種類を決定します。 0 - 通常の実行 (正常に終了) 3 - クライアントが開始した実行中止 4 - 例外で中止された実行 |
execution_type_desc | nvarchar(128) | 実行の種類フィールドの説明: 0 - 通常 3 - 中止 4 - 例外 |
total_query_wait_time_ms | bigint | 集計間隔と待機カテゴリ内のクエリ プランの合計 CPU wait 時間 (ミリ秒単位で報告)。 |
avg_query_wait_time_ms | float | 集計間隔と待機カテゴリ内のクエリ プランの実行あたりの平均待機時間 (ミリ秒単位で報告)。 |
last_query_wait_time_ms | bigint | 集計間隔と待機カテゴリ内のクエリ プランの最終待機時間 (ミリ秒単位で報告)。 |
min_query_wait_time_ms | bigint | 集計間隔と待機カテゴリ内のクエリ プランの最小 CPU wait 時間 (ミリ秒単位で報告)。 |
max_query_wait_time_ms | bigint | 集計間隔と待機カテゴリ内のクエリ プランの最大 CPU wait 時間 (ミリ秒単位で報告)。 |
stdev_query_wait_time_ms | float | 集計間隔と待機カテゴリ内のクエリ プランの Query wait 時間の標準偏差 (ミリ秒単位で報告)。 |
replica_group_id | bigint | このレプリカのレプリカ セット番号を識別します。 sys.query_store_replicasする外部キー。 適用対象: SQL Server (SQL Server 2022 (16.x) 以降) |
待機カテゴリ マッピング テーブル
"%" はワイルドカードとして使用されます
整数値 | 待機のカテゴリ | 待機の種類はカテゴリに含まれます |
---|---|---|
0 | 不明 | Unknown |
1 | CPU | SOS_SCHEDULER_YIELD |
2 | ワーカー スレッド* | THREADPOOL |
3 | ロック | LCK_M_% |
4 | ラッチ | LATCH_% |
5 | バッファー ラッチ | PAGELATCH_% |
6 | バッファー IO | PAGEIOLATCH_% |
7 | コンパイル* | RESOURCE_SEMAPHORE_QUERY_COMPILE |
8 | SQL CLR | CLR%、SQLCLR% |
9 | ミラーリング | DBMIRROR% |
"10" | トランザクション | XACT%、DTC%、TRAN_MARKLATCH_%、MSQL_XACT_%、TRANSACTION_MUTEX |
11 | Idle | SLEEP_%、LAZYWRITER_SLEEP、SQLTRACE_BUFFER_FLUSH、SQLTRACE_INCREMENTAL_FLUSH_SLEEP、SQLTRACE_WAIT_ENTRIES、FT_IFTS_SCHEDULER_IDLE_WAIT、XE_DISPATCHER_WAIT、REQUEST_FOR_DEADLOCK_SEARCH、LOGMGR_QUEUE、ONDEMAND_TASK_QUEUE、CHECKPOINT_QUEUE、XE_TIMER_EVENT |
12 | プリエンプティブ | PREEMPTIVE_% |
13 | Service Broker | BROKER_% (ただし BROKER_RECEIVE_WAITFOR ではありません) |
14 | 処理ログ IO | LOGMGR、LOGBUFFER、LOGMGR_RESERVE_APPEND、LOGMGR_FLUSH、LOGMGR_PMM_LOG、CHKPT、WRITELOG |
15 | ネットワーク IO | ASYNC_NETWORK_IO、NET_WAITFOR_PACKET、PROXY_NETWORK_IO、EXTERNAL_SCRIPT_NETWORK_IOF |
16 | 並列処理 | CXCONSUMER、CXPACKET、CXSYNC_CONSUMER、CXSYNC_PORT、EXCHANGE、HT%、BMP%、BP% |
17 | メモリ | RESOURCE_SEMAPHORE、CMEMTHREAD、CMEMPARTITIONED、EE_PMOLOCK、MEMORY_ALLOCATION_EXT、RESERVED_MEMORY_ALLOCATION_EXT、MEMORY_GRANT_UPDATE |
18 | ユーザー待機 | WAITFOR、WAIT_FOR_RESULTS、BROKER_RECEIVE_WAITFOR |
19 | トレース | TRACEWRITE、SQLTRACE_LOCK、SQLTRACE_FILE_BUFFER、SQLTRACE_FILE_WRITE_IO_COMPLETION、SQLTRACE_FILE_READ_IO_COMPLETION、SQLTRACE_PENDING_BUFFER_WRITERS、SQLTRACE_SHUTDOWN、QUERY_TRACEOUT、TRACE_EVTNOTIFF |
20 | フルテキスト検索 | FT_RESTART_CRAWL、FULLTEXT GATHERER、MSSEARCH、FT_METADATA_MUTEX、FT_IFTSHC_MUTEX、FT_IFTSISM_MUTEX、FT_IFTS_RWLOCK、FT_COMPROWSET_RWLOCK、FT_MASTER_MERGE、FT_PROPERTYLIST_CACHE、FT_MASTER_MERGE_COORDINATOR、PWAIT_RESOURCE_SEMAPHORE_FT_PARALLEL_QUERY_SYNC |
21 | その他のディスク IO | ASYNC_IO_COMPLETION、IO_COMPLETION、BACKUPIO、WRITE_COMPLETION、IO_QUEUE_LIMIT、IO_RETRY |
22 | レプリケーション | SE_REPL_%、REPL_%、HADR_% (HADR_THROTTLE_LOG_RATE_GOVERNOR ではない)、PWAIT_HADR_%、REPLICA_WRITES、FCB_REPLICA_WRITE、FCB_REPLICA_READ、PWAIT_HADRSIM |
23 | ログ レート ガバナー | LOG_RATE_GOVERNOR、POOL_LOG_RATE_GOVERNOR、HADR_THROTTLE_LOG_RATE_GOVERNOR、INSTANCE_LOG_RATE_GOVERNOR、RBIO_RG_% |
* クエリ ストアでは、クエリの "コンパイル" 時ではなく、クエリの "実行" 時にのみ待機統計を追跡します。 これにより、コンパイル待機統計を追跡するクエリ ストアの機能が制限されます。
アクセス許可
VIEW DATABASE STATE
アクセス許可が必要です。
次のステップ
クエリ ストアについて詳しくは、次の記事を参照してください。
- sys.query_store_replicas (Transact-SQL)
- sys.database_query_store_options (Transact-SQL)
- sys.query_context_settings (Transact-SQL)
- sys.query_store_plan (Transact-SQL)
- sys.query_store_query (Transact-SQL)
- sys.query_store_query_text (Transact-SQL)
- sys.query_store_runtime_stats_interval (Transact-SQL)
- クエリのストアを使用した、パフォーマンスの監視
- カタログ ビュー (Transact-SQL)
- クエリ ストアのストアド プロシージャ (Transact-SQL)