sys.dm_tran_version_store_space_usage (Transact-SQL)
Se aplica a: SQL Server 2016 (13.x) SP 2 y versiones posteriores Azure SQL Database Azure Synapse Analytics Analytics Platform System (PDW)
Devuelve una tabla que muestra el espacio total en tempdb utilizado por los registros del almacén de versiones para cada base de datos. sys.dm_tran_version_store_space_usage es eficaz y no es costoso ejecutarse, ya que no navega por los registros individuales del almacén de versiones y devuelve el espacio de almacenamiento de versiones agregado consumido en tempdb por base de datos.
Cada registro con versiones se almacena como datos binarios, junto con alguna información de seguimiento o estado. Al igual que los registros en tablas de base de datos, los registros del almacén de versiones se almacenan en páginas de 8.192 bytes. Si un registro supera los 8.192 bytes, se dividirá en dos registros diferentes.
Puesto que el registro de versiones se almacena como binario, no existen problemas con las diferentes intercalaciones de bases de datos distintas. Use sys.dm_tran_version_store_space_usage para supervisar y planear el tamaño de tempdb en función del uso del espacio de almacenamiento de versiones de las bases de datos en una instancia de SQL Server.
Nombre de la columna | Tipo de datos | Descripción |
---|---|---|
database_id | int | Id. de base de datos de la base de datos. En Azure SQL Database, los valores son únicos dentro de una base de datos única o un grupo elástico, pero no dentro de un servidor lógico. |
reserved_page_count | bigint | Recuento total de las páginas reservadas en tempdb para los registros de almacén de versiones de la base de datos. |
reserved_space_kb | bigint | Espacio total usado en kilobytes en tempdb para los registros del almacén de versiones de la base de datos. |
Permisos
En SQL Server, se requiere el permiso VIEW SERVER STATE
.
Permisos para SQL Server 2022 y versiones posteriores
Requiere el permiso VER ESTADO DE RENDIMIENTO DEL SERVIDOR en el servidor.
Ejemplos
La consulta siguiente se puede usar para determinar el espacio consumido en tempdb, por almacén de versiones de cada base de datos de una instancia de SQL Server.
SELECT
DB_NAME(database_id) as 'Database Name',
reserved_page_count,
reserved_space_kb
FROM sys.dm_tran_version_store_space_usage;
Este es el conjunto de resultados.
Database Name reserved_page_count reserved_space_kb
------------------------ -------------------- -----------
msdb 0 0
AdventureWorks2022 10 80
AdventureWorks2022DW 0 0
WideWorldImporters 20 160
Consulte también
Funciones y vistas de administración dinámica (Transact-SQL)
Funciones y vistas de administración dinámica relacionadas con transacciones (Transact-SQL)