sys.fn_virtualfilestats (Transact-SQL)
Devuelve las estadísticas de E/S de los archivos de las bases de datos, incluidos los archivos de registro. En SQL Server, esta información también está disponible en la vista de administración dinámica sys.dm_io_virtual_file_stats.
Convenciones de sintaxis de Transact-SQL
Sintaxis
fn_virtualfilestats ( { database_id | NULL } , { file_id | NULL } )
Argumentos
database_id | NULL
Identificador de la base de datos. database_id es de tipo int y no tiene valor predeterminado. Especifique NULL para devolver información de todas las bases de datos de la instancia de SQL Server.file_id | NULL
Identificador del archivo. file_id es de tipo int y no tiene valor predeterminado. Especifique NULL para devolver información de todos los archivos de la base de datos.
Tabla devuelta
Nombre de columna |
Tipo de datos |
Descripción |
---|---|---|
DbId |
smallint |
Id. de la base de datos. |
FileId |
smallint |
Identificador de archivo. |
TimeStamp |
int |
Marca de tiempo de la base de datos en la que se obtuvieron los datos. |
NumberReads |
bigint |
Número de operaciones de lectura emitidas en el archivo. |
BytesRead |
bigint |
Número de bytes leídos emitidos en el archivo. |
IoStallReadMS |
bigint |
Tiempo total, en milisegundos, que los usuarios han esperado para que finalicen las E/S de lectura en el archivo. |
NumberWrites |
bigint |
Número de operaciones de escritura realizadas en el archivo. |
BytesWritten |
bigint |
Número de bytes escritos en el archivo. |
IoStallWriteMS |
bigint |
Tiempo total, en milisegundos, que los usuarios han esperado para que finalicen las E/S de escritura en el archivo. |
IoStallMS |
bigint |
Suma de IoStallReadMS e IoStallWriteMS. |
FileHandle |
bigint |
Valor del identificador de archivos. |
BytesOnDisk |
bigint |
Tamaño físico del archivo (recuento de bytes) en disco. En los archivos de base de datos, se trata del mismo valor que el de size de sys.database_files, aunque se expresa en bytes en lugar de en páginas. En los archivos dispersos de instantáneas de base de datos, se trata del espacio que utiliza el sistema operativo para el archivo. |
Comentarios
fn_virtualfilestats es una función con valores de tabla del sistema que ofrece información estadística, como el número total de operaciones de E/S realizadas en un archivo. Puede utilizarse esta función como ayuda para realizar un seguimiento del tiempo que los usuarios tienen que esperar para leer un archivo o escribir en él. La función también ayuda a identificar los archivos que tienen mucha actividad de E/S.
Permisos
Necesita el permiso VIEW SERVER STATE en el servidor.
Ejemplos
A.Mostrar información estadística de una base de datos
En el siguiente ejemplo se muestra información estadística del archivo con Id. 1 de la base de datos con un Id. de 1.
SELECT *
FROM fn_virtualfilestats(1, 1);
GO
B.Mostrar información estadística de una base de datos y un archivo con nombre
En el siguiente ejemplo se muestra información estadística del archivo de registro de la base de datos de ejemplo AdventureWorks2012. La función del sistema DB_ID se utiliza para especificar el parámetro database_id.
SELECT *
FROM fn_virtualfilestats(DB_ID(N'AdventureWorks2012'), 2);
GO
C.Mostrar información estadística de todas las bases de datos y todos los archivos
En el siguiente ejemplo se muestra información estadística de todos los archivos de todas las bases de datos de la instancia de SQL Server.
SELECT *
FROM fn_virtualfilestats(NULL,NULL);
GO