Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
применимо к:Базе данных SQL Azure
Функция sys.dm_hs_database_log_rate динамического управления (DMF) возвращает сведения о частоте создания журналов в гипермасштабировании базы данных SQL Azure.
Каждая строка в результирующем наборе представляет компонент, который управляет скоростью создания журналов (уменьшает) в базе данных гипермасштабирования. В архитектуре уровня "Гипермасштабирование " существует несколько компонентов, которые могут снизить скорость создания журналов, чтобы обеспечить стабильную производительность базы данных и балансировать их.
Некоторые типы компонентов, такие как вторичные вычислительные реплики или серверы страниц, могут временно снизить частоту создания журналов на первичной реплике вычислений, чтобы обеспечить общую работоспособность и стабильность базы данных.
Если скорость создания журналов не уменьшается с помощью какого-либо компонента, возвращается строка для основного компонента вычислительной реплики, показывающая максимальную разрешенную частоту создания журналов для базы данных.
Эта динамическая функция управления возвращает строки, только если сеанс подключен к первичной реплике.
Синтаксис
sys.dm_hs_database_log_rate (
{ database_id | NULL }
)
Arguments
идентификатор_базы_данных
database_id представляет собой целое число , представляющее идентификатор базы данных без значения по умолчанию. Допустимые входные данные — это идентификатор базы данных или NULL.
database_id При указании sys.dm_hs_database_log_rate возвращает строку для этой конкретной базы данных.
Если для одной базы данных не указана или NULL когда она указана, возвращается строка текущей базы данных. Для базы данных в эластичном пуле возвращает строки для всех баз данных в пуле, где вызывающий объект имеет достаточные разрешения.
Можно указать встроенную функцию DB_ID .
Возвращаемая таблица
| Имя столбца | Тип данных | Description |
|---|---|---|
database_id |
int НЕ NULL | Идентификатор базы данных. Значения уникальны в одной базе данных или эластичном пуле, но не в логическом сервере. |
replica_id |
uniqueidentifier НЕ NULL | Идентификатор вычислительной реплики, соответствующей столбцу replica_id в sys.dm_database_replica_states.
NULL значение , если component_id соответствует серверу страницы с гипермасштабированием.Это значение возвращается вызовом DATABASEPROPERTYEX(DB_NAME(), 'ReplicaID') функции при подключении к реплике. |
file_id |
int НЕДЕЙСТВИТЕЛЬНЫЙ | Идентификатор файла базы данных в базе данных, соответствующей серверу страницы, ограничивающей частоту создания журналов. Заполняется только в том случае, если роль является сервером страницы, в противном случае возвращается NULL. Это значение соответствует столбцу file_id в sys.database_files. |
current_max_log_rate |
bigint НЕ NULL | Текущее максимальное ограничение частоты создания журналов в первичной вычислительной реплике в байтах/с. Если компонент не снижает частоту создания журналов, сообщает ограничение скорости создания журнала для базы данных Гипермасштабирования. |
component_id |
uniqueidentifier НЕ NULL | Уникальный идентификатор компонента гипермасштабирования, например сервера страницы или реплики вычислений. |
role |
smallint НЕ NULL | Все существующие роли компонентов, которые могут уменьшить создание журналов.Unknown = 0Storage = 1Primary = 2Replica = 4LocalDestage = 5Destage = 6 GeoReplica = 10StorageCheckpoint = 12MigrationTarget = 14Если скорость создания журнала ограничена, на первичной реплике вычислений могут наблюдаться следующие типы ожидания, соответствующие каждой роли: 1 - RBIO_RG_STORAGE 4 - RBIO_RG_REPLICA 5 — RBIO_RG_LOCALDESTAGE 6 — RBIO_RG_DESTAGE 10 - RBIO_RG_GEOREPLICA 12 - RBIO_RG_STORAGE_CHECKPOINT 14 - RBIO_RG_MIGRATION_TARGET Дополнительные сведения см. в разделе " Регулирование скорости журнала" |
role_desc |
nvarchar(60) НЕ NULL |
Unknown = роль компонента не известнаStorage = серверы страницыPrimary = первичная реплика вычисленийReplica = вторичная реплика вычислений, например реплика высокой доступности или именованной реплики.LocalDestage = служба журналовDestage = долгосрочное хранилище журналовGeoReplica = геоторичная репликаStorageCheckpoint = контрольная точка на сервере страницыMigrationTarget = целевая база данных во время обратной миграции из гипермасштабирования в базу данных, не относясь к гипермасштабированию. |
catchup_rate |
bigint НЕ NULL | Скорость перехвата в байтах/с. Возвращает ноль, если скорость журнала не уменьшается. |
catchup_bytes |
bigint НЕ NULL | Объем журнала транзакций в байтах, который компонент должен применяться для перехвата первичной реплики вычислений. Возвращается 0 , когда компонент поймается. |
last_reported_time |
datetime | Последний раз, когда служба журналов Гипермасштабирования сообщила о значениях. |
Замечания
Функция sys.dm_hs_database_log_rate динамического управления применяется только к уровню гипермасштабирования базы данных SQL Azure.
На уровне служб "Гипермасштабирование" базы данных SQL Azure служба журналов гарантирует, что распределенные компоненты не будут далеко позади применения журнала транзакций. Это необходимо для поддержания общей работоспособности системы и стабильности. Если компоненты находятся за пределами и их скорость перехвата меньше текущей частоты создания журналов, служба журналов уменьшает частоту создания журналов на первичном уровне.
sys.dm_hs_database_log_rate() DMF можно использовать для понимания того, какой компонент вызывает снижение частоты журналов и в какой степени, а также в течение длительного времени сокращения скорости журнала.
Дополнительные сведения о снижении скорости журнала см. в разделе "Диагностика производительности" в гипермасштабировании.
Permissions
Для этой динамической функции управления требуется разрешение VIEW DATABASE PERFORMANCE STATE .
Примеры
А. Возврат компонента, вызывающего снижение скорости журнала в определенной базе данных
В следующем примере возвращается строка для компонента, вызывающего снижение скорости журнала. Если скорость создания журналов не уменьшается с помощью какого-либо компонента, строка будет возвращена для основного вычисления, показывающая максимальную разрешенную частоту создания журналов для базы данных.
SELECT current_max_log_rate_bps, role_desc, catchup_rate_bps, catchup_distance_bytes
FROM sys.dm_hs_database_log_rate(DB_ID(N'Contosodb'));
В. Возврат компонентов, вызывающих снижение частоты журналов
При подключении к базе данных в эластичном пуле в следующем примере возвращается строка для компонента, вызывающего сокращение частоты журналов, для каждой базы данных в пуле, где есть достаточные разрешения. При подключении к одной базе данных возвращает строку для базы данных.
SELECT current_max_log_rate_bps, role_desc, catchup_rate_bps, catchup_distance_bytes
FROM sys.dm_hs_database_log_rate(NULL);