Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Относится к: SQL Server 2017 (14.x) и более поздние версии
Azure SQL Database
SQL Database в Microsoft Fabric
Содержит сведения о состоянии ожидания запроса.
| Имя столбца | Тип данных | Description |
|---|---|---|
| wait_stats_id | bigint | Идентификатор строки, представляющей статистику ожиданий для plan_id, runtime_stats_interval_id, execution_type и wait_category. Он уникален только для прошлых интервалов статистики среды выполнения. Для интервала, активного в текущий момент, статистику ожиданий плана с указанным plan_id, типом выполнения execution_type и категорией ожидания wait_category, могут показывать несколько строк. Как правило, одна строка содержит статистику ожиданий, которая сбрасывается на диск, а другие — состояние в памяти. Таким образом, чтобы получить фактическое состояние для каждого интервала, необходимо агрегировать метрики, сгруппировав их по параметрам 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 | ЦП | SOS_SCHEDULER_YIELD |
| 2 | Рабочий поток* | THREADPOOL |
| 3 | Заблокировать | LCK_M_% |
| 4 | Кратковременная блокировка | LATCH_% |
| 5 | Кратковременная блокировка буфера | PAGELATCH_% |
| 6 | Ввод-вывод буфера | 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 | Ввод-вывод журнала транзакций | LOGMGR, LOGBUFFER, LOGMGR_RESERVE_APPEND, LOGMGR_FLUSH, LOGMGR_PMM_LOG, CHKPT, WRITELOG |
| 15 | Сетевой ввод-вывод | ASYNC_NETWORK_IO, NET_WAITFOR_PACKET, PROXY_NETWORK_IO, EXTERNAL_SCRIPT_NETWORK_IOF |
| 16 | Parallelism | 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 | Пользовательское ожидание | ПОДОЖДИ, 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 СБОРЩИК, 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 | Другие дисковые операции ввода-вывода | 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)