sys.dm_db_xtp_checkpoint_stats (Transact-SQL)
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure
Возвращает статистику об операциях контрольной точки OLTP в памяти в текущей базе данных. Если база данных не имеет объектов OLTP в памяти, sys.dm_db_xtp_checkpoint_stats
возвращает пустой результирующий набор.
Дополнительные сведения см. в разделе In-Memory OLTP (оптимизация в памяти).
USE [In_Memory_db_name]
SELECT * FROM sys.dm_db_xtp_checkpoint_stats;
SQL Server 2014 (12.x) существенно отличается от более поздних версий и обсуждается отдельно.
В следующей таблице описываются столбцы в sys.dm_db_xtp_checkpoint_stats
sql Server 2016 (13.x) и более поздних версиях.
Имя столбца | Тип | Описание |
---|---|---|
last_lsn_processed |
bigint | Последний LSN, который видел контроллер. |
end_of_log_lsn |
numeric(38) | LSN конца журнала. |
bytes_to_end_of_log |
bigint | Журнал байтов, необработанных контроллером, соответствующим байтам между last_lsn_processed и end_of_log_lsn . |
log_consumption_rate |
bigint | Скорость потребления журнала транзакций контроллером (в КБ/с). |
active_scan_time_in_ms |
bigint | Время, затраченное контроллером на активное сканирование журнала транзакций. |
total_wait_time_in_ms |
bigint | Совокупное время ожидания контроллера, не сканируя журнал. |
waits_for_io |
bigint | Количество ожиданий операций ввода-вывода журнала, вызванных потоком контроллера. |
io_wait_time_in_ms |
bigint | Совокупное время, затраченное на ожидание операций ввода-вывода журнала потоком контроллера. |
waits_for_new_log_count |
bigint | Количество ожиданий, вызванных потоком контроллера для создания нового журнала. |
new_log_wait_time_in_ms |
bigint | Совокупное время, затраченное на ожидание нового журнала потоком контроллера. |
idle_attempts_count |
bigint | Количество раз, когда контроллер переходит в состояние простоя. |
tx_segments_dispatched |
bigint | Количество сегментов, отображаемых контроллером и отправленных сериализаторам. Сегмент — это непрерывная часть журнала, которая формирует единицу сериализации. В настоящее время он имеет размер до 1 МБ, но может измениться в будущем. |
segment_bytes_dispatched |
bigint | Общее количество байтов, отправленных контроллером в сериализаторы, так как база данных перезапускается. |
bytes_serialized |
bigint | Общее количество байтов, сериализованных после перезапуска базы данных. |
serializer_user_time_in_ms |
bigint | Время, затраченное сериализаторами в пользовательском режиме. |
serializer_kernel_time_in_ms |
bigint | Время, затраченное сериализаторами в режиме ядра. |
xtp_log_bytes_consumed |
bigint | Общее количество байтов журнала, потребляемых после перезапуска базы данных. |
checkpoints_closed |
bigint | Количество контрольных точек, закрытых после перезапуска базы данных. |
last_closed_checkpoint_ts |
bigint | Метка времени последней закрытой контрольной точки. |
hardened_recovery_lsn |
numeric(38) | Восстановление начинается с этого LSN. |
hardened_root_file_guid |
uniqueidentifier | GUID корневого файла, который заклинился в результате последней завершенной контрольной точки. |
hardened_root_file_watermark |
bigint | Только внутренний. Указывает, насколько далеко это допустимо для чтения корневого файла до (это только внутренний соответствующий тип — называется BSN). |
hardened_truncation_lsn |
numeric(38) | LSN точки усечения. |
log_bytes_since_last_close |
bigint | Байты от последнего близко к текущему концу журнала. |
time_since_last_close_in_ms |
bigint | Время с последнего закрытия контрольной точки. |
current_checkpoint_id |
bigint | В настоящее время новые сегменты назначаются этой контрольной точке. Система контрольных точек — это конвейер. Текущая контрольная точка — это точка, к которой назначаются сегменты из журнала. Когда он достигнет предела, контроллер освобождает контрольную точку и новый, созданный как текущий. |
current_checkpoint_segment_count |
bigint | Количество сегментов в текущей контрольной точке. |
recovery_lsn_candidate |
bigint | Только внутренне. Кандидат, который будет выбран как recoverylsn при current_checkpoint_id закрытии. |
outstanding_checkpoint_count |
bigint | Количество контрольных точек в конвейере, ожидающих закрытия. |
closing_checkpoint_id |
bigint | Идентификатор закрывающей контрольной точки. Сериализаторы работают параллельно, поэтому после их завершения контрольная точка является кандидатом на закрытие по закрытому потоку. Но закрывающий поток может закрывать только один раз, и он должен быть в порядке, поэтому закрывающая контрольная точка — это тот, над которым работает близкий поток. |
recovery_checkpoint_id |
bigint | Идентификатор контрольной точки, используемой в восстановлении. |
recovery_checkpoint_ts |
bigint | Метка времени контрольной точки восстановления. |
bootstrap_recovery_lsn |
numeric(38) | Восстановление LSN для начальной загрузки. |
bootstrap_root_file_guid |
uniqueidentifier | GUID корневого файла для начальной загрузки. |
internal_error_code |
bigint | Ошибка, обнаруженная любым контроллером, сериализатором, закрытием и слиянием потоков. |
bytes_of_large_data_serialized |
bigint | Указывает объем данных, сериализованных. |
db_in_checkpoint_only_mode |
bit | Значение true, если база данных находится в режиме только для контрольной точки OLTP в памяти. Область применения: SQL Server 2022 (16.x) и более поздних версий. |
Разрешения
ДЛЯ SQL Server 2019 (15.x) и более ранних версий требуется VIEW DATABASE STATE
разрешение на базу данных.
ДЛЯ SQL Server 2022 (16.x) и более поздних версий требуется VIEW DATABASE PERFORMANCE STATE
разрешение на базу данных.
Связанный контент
- Введение в таблицы, оптимизированные для памяти
- Динамические административные представления таблиц с оптимизированной для памяти таблицей (Transact-SQL)
- Обзор и сценарии использования OLTP в памяти
- Оптимизация производительности с помощью технологий в памяти в База данных SQL Azure
- Оптимизация производительности с помощью технологий в памяти в Управляемый экземпляр SQL Azure