fn_virtualfilestats (Transact-SQL)

Retourne des statistiques sur les entrées/sorties (E/S) des fichiers de base de données, notamment sur les fichiers journaux. Dans SQL Server, ces informations sont également disponibles dans la vue de gestion dynamique sys.dm_io_virtual_file_stats.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

fn_virtualfilestats ( { database_id | NULL } , { file_id | NULL } )

Arguments

  • database_id | NULL
    Identificateur de la base de données. L'argument database_id est de type int, sans valeur par défaut. Spécifiez NULL pour retourner les informations de toutes les bases de données de l'instance de SQL Server.

  • file_id | NULL
    Identificateur du fichier. L'argument file_id est de type int, sans valeur par défaut. Spécifiez NULL pour retourner les informations de tous les fichiers de la base de données.

Table retournée

Nom de la colonne

Type de données

Description

DbId

smallint

ID de la base de données

FileId

smallint

ID de fichier

TimeStamp

int

Cachet temporel de prélèvement des données de base de données

NumberReads

bigint

Nombre de lectures effectuées sur le fichier

BytesRead

bigint

Nombre d'octets lus sur le fichier

IoStallReadMS

bigint

Durée totale (en millisecondes) d'exécution des E/S de lecture sur le fichier

NumberWrites

bigint

Nombre d'écritures effectuées sur le fichier

BytesWritten

bigint

Nombre d'octets écrits sur le fichier

IoStallWriteMS

bigint

Durée totale (en millisecondes) d'exécution des E/S d'écriture sur le fichier

IoStallMS

bigint

Somme des valeurs IoStallReadMS et IoStallWriteMS.

FileHandle

bigint

Valeur du handle de fichier.

BytesOnDisk

bigint

Taille physique du fichier sur le disque (en octets).

Pour les fichiers de base de données, il s'agit de la même valeur que size dans sys.database_files, mais exprimée en octets plutôt qu'en pages.

Dans le cas des fichiers fragmentés de capture instantanée de base de données, il s'agit de l'espace qu'utilise le système d'exploitation pour ceux-ci.

Notes

La fonction fn_virtualfilestats comporte les valeurs de table qui fournissent des informations statistiques, telles que le nombre total d'E/S effectuées dans un fichier. Cette fonction vous permet d'enregistrer et de suivre la durée d'attente de l'utilisateur avant de pouvoir lire ou écrire dans un fichier. Cette fonction permet également d'identifier les fichiers dont l'activité est intense au niveau des entrées/sorties (E/S).

Autorisations

Requiert l'autorisation VIEW SERVER STATE sur le serveur.

Exemples

A. Affichage des informations statistiques d'une base de données

L'exemple suivant affiche les informations statistiques de l'ID de fichier 1 de la base de données dont l'ID est 1.

SELECT *
FROM fn_virtualfilestats(1, 1);
GO

B. Affichage des informations statistiques d'une base de données et d'un fichier nommés

L'exemple suivant affiche les informations statistiques du fichier journal de l'exemple de base de données AdventureWorks. La fonction système DB_ID permet de spécifier le paramètre database_id.

SELECT *
FROM fn_virtualfilestats(DB_ID(N'AdventureWorks'), 2);
GO

C. Affichage des informations statistiques de la totalité des bases de données et des fichiers

L'exemple suivant affiche les informations statistiques de tous les fichiers de toutes les bases de données de l'instance de SQL Server.

SELECT *
FROM fn_virtualfilestats(NULL,NULL);
GO