Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
se aplica a: de Azure SQL Database
La sys.dm_hs_database_log_rate función de administración dinámica (DMF) devuelve información sobre la tasa de generación de registros en Hiperescala de Azure SQL Database.
Cada fila del conjunto de resultados representa un componente que controla (reduce) la tasa de generación de registros en una base de datos de Hiperescala. Hay varios componentes en la arquitectura del nivel hiperescala que podrían reducir la tasa de generación de registros para mantener el rendimiento de la base de datos estable y equilibrado.
Algunos tipos de componentes, como réplicas de proceso secundarias o servidores de páginas, pueden reducir temporalmente la tasa de generación de registros en la réplica de proceso principal para garantizar el estado y la estabilidad generales de la base de datos.
Si la tasa de generación de registros no se reduce en ningún componente, se devuelve una fila para el componente de réplica de proceso principal, que muestra la tasa máxima de generación de registros permitida para la base de datos.
Esta función de administración dinámica devuelve filas solo cuando la sesión está conectada a la réplica principal.
Syntax
sys.dm_hs_database_log_rate (
{ database_id | NULL }
)
Arguments
ID de base de datos
database_id es un entero que representa el identificador de base de datos, sin ningún valor predeterminado. Las entradas válidas son un identificador de base de datos o NULL.
Cuando se proporciona sys.dm_hs_database_log_rate , database_id devuelve una fila para esa base de datos específica.
Cuando no se proporciona o cuando NULL se proporciona, para una base de datos única, devuelve una fila para la base de datos actual. Para una base de datos de un grupo elástico, devuelve filas para todas las bases de datos del grupo donde el autor de la llamada tiene permisos suficientes.
Se puede especificar la función integrada DB_ID .
Tabla devuelta
| Nombre de la columna | Tipo de dato | Description |
|---|---|---|
database_id |
Int NOT NULL | Identificador de la base de datos. Los valores son únicos dentro de una base de datos única o un grupo elástico, pero no dentro de un servidor lógico. |
replica_id |
uniqueidentifier NOT NULL | Identificador de una réplica de proceso que corresponde a la replica_id columna de sys.dm_database_replica_states.
NULL cuando component_id corresponde a un servidor de páginas de Hiperescala.La llamada de función devuelve DATABASEPROPERTYEX(DB_NAME(), 'ReplicaID') este valor cuando está conectado a la réplica. |
file_id |
Int NULO | Identificador del archivo de base de datos dentro de la base de datos que corresponde al servidor de páginas que limita la tasa de generación de registros. Solo se rellenará si el rol es el servidor de páginas; de lo contrario, devuelve NULL. Este valor corresponde a la file_id columna de sys.database_files. |
current_max_log_rate |
bigint NOT NULL | Límite de velocidad máxima de registro actual para la tasa de generación de registros en la réplica de proceso principal, en bytes/s. Si ningún componente reduce la tasa de generación de registros, notifica el límite de velocidad de generación de registros para una base de datos de Hiperescala. |
component_id |
uniqueidentifier NOT NULL | Identificador único de un componente de Hiperescala, como un servidor de páginas o una réplica de proceso. |
role |
smallint NOT NULL | Todos los roles de componente existentes que pueden reducir la generación de registros.Unknown = 0Storage = 1Primary = 2Replica = 4LocalDestage = 5Destage = 6 GeoReplica = 10StorageCheckpoint = 12MigrationTarget = 14Cuando la tasa de generación de registros es limitada, es posible que se observen los siguientes tipos de espera correspondientes a cada rol en la réplica de proceso principal: 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 Para más información, consulte Esperas de limitación de velocidad de registro. |
role_desc |
nvarchar(60) NOT NULL |
Unknown = No se conoce el rol de componenteStorage = Servidores de páginaPrimary = Réplica de proceso principalReplica = Réplica de proceso secundaria, como una réplica de alta disponibilidad (HA) o una réplica con nombre.LocalDestage = Servicio de registroDestage = Almacenamiento de registros a largo plazoGeoReplica = Réplica secundaria geográficaStorageCheckpoint = Un punto de control en un servidor de páginasMigrationTarget = La base de datos de destino durante la migración inversa de Hiperescala a una base de datos que no es hiperescala. |
catchup_rate |
bigint NOT NULL | Tasa de captura en bytes/s. Devuelve cero cuando no se reduce la tasa de registro. |
catchup_bytes |
bigint NOT NULL | Cantidad de registro de transacciones, en bytes, que un componente debe aplicar para ponerse al día con la réplica de proceso principal. Devuelve 0 cuando se detecta el componente. |
last_reported_time |
datetime | La última vez que el servicio de registro de Hiperescala notificó los valores. |
Observaciones
La sys.dm_hs_database_log_rate función de administración dinámica solo se aplica al nivel hiperescala de Azure SQL Database.
En el nivel de servicio Hiperescala de Azure SQL Database, el servicio de registro garantiza que los componentes distribuidos no se lejos de aplicar el registro de transacciones. Esto es necesario para mantener el mantenimiento general del sistema y la estabilidad. Cuando los componentes están detrás y su tasa de puesta al día es menor que la tasa de generación de registros actual, el servicio de registro reduce la tasa de generación de registros en la principal. La sys.dm_hs_database_log_rate() DMF se puede usar para comprender qué componente está causando la reducción de la tasa de registro y hasta qué punto, y durante cuánto tiempo puede durar la reducción de la tasa de registro.
Para obtener más contexto sobre la reducción de velocidad de registro, consulte Diagnósticos de rendimiento en Hiperescala.
Permissions
Esta función de administración dinámica requiere el permiso VIEW DATABASE PERFORMANCE STATE .
Examples
A. Devolver el componente que provoca una reducción de la tasa de registro en una base de datos específica
En el ejemplo siguiente se devuelve una fila para el componente que provoca la reducción de la tasa de registro. Si la tasa de generación de registros no se reduce en ningún componente, se devolverá una fila para el proceso principal, que muestra la tasa máxima de generación de registros permitida para la base de datos.
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'));
B. Devolver los componentes que provocan la reducción de la tasa de registro
Cuando se conecta a una base de datos de un grupo elástico, en el ejemplo siguiente se devuelve una fila para el componente que provoca la reducción de la tasa de registro, para cada base de datos del grupo en la que tiene permisos suficientes. Cuando se conecta a una base de datos única, devuelve la fila de la base de datos.
SELECT current_max_log_rate_bps, role_desc, catchup_rate_bps, catchup_distance_bytes
FROM sys.dm_hs_database_log_rate(NULL);