sys.dm_io_virtual_file_stats (Transact-SQL)
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Renvoie des statistiques d'E/S sur les fichiers de données et les journaux. Cette fonction de gestion dynamique remplace la fonction fn_virtualfilestats .
Remarque
Pour appeler cela à partir d’Azure Synapse Analytics, utilisez le nom sys.dm_pdw_nodes_io_virtual_file_stats. Cette syntaxe n’est pas prise en charge par le pool SQL serverless dans Azure Synapse Analytics.
Syntaxe
-- Syntax for SQL Server and Azure SQL Database
sys.dm_io_virtual_file_stats (
{ database_id | NULL },
{ file_id | NULL }
)
-- Syntax for Azure Synapse Analytics
sys.dm_pdw_nodes_io_virtual_file_stats
Arguments
database_id | ZÉRO
S’applique à : SQL Server 2008 (10.0.x) et versions ultérieures, Azure SQL Database
ID de la base de données. database_id est int, sans valeur par défaut. Les entrées autorisées sont l'ID d'une base de données ou la valeur NULL. Lorsque la valeur NULL est spécifiée, toutes les bases de données de l’instance de SQL Server sont retournées.
La fonction intégrée DB_ID peut être spécifiée.
file_id | ZÉRO
S’applique à : SQL Server 2008 (10.0.x) et versions ultérieures, Azure SQL Database
ID du fichier. file_id est int, sans valeur par défaut. Les entrées autorisées sont l'ID d'un fichier ou la valeur NULL. Lorsque vous spécifiez la valeur NULL, tous les fichiers de la base de données sont renvoyés.
La fonction intégrée FILE_IDEX peut être spécifiée et fait référence à un fichier dans la base de données active.
Table retournée
Nom de la colonne | Type de données | Description |
---|---|---|
database_name | sysname | Ne s’applique pas à :: SQL Server. Nom de la base de données. Pour Azure Synapse Analytics, il s’agit du nom de la base de données stockée sur le nœud identifié par pdw_node_id. Chaque nœud a une base de données tempdb qui a 13 fichiers. Chaque nœud a également une base de données par distribution et chaque base de données de distribution a 5 fichiers. Par exemple, si chaque nœud contient 4 distributions, les résultats affichent 20 fichiers de base de données de distribution par pdw_node_id. |
database_id | smallint | ID de la base de données. Dans la base de données Azure SQL, les valeurs sont uniques au sein d’une base de données unique ou d’un pool élastique, mais pas dans un serveur logique. |
file_id | smallint | ID du fichier. |
sample_ms | bigint | Nombre de millisecondes écoulées depuis le démarrage de l'ordinateur. Cette colonne peut être utilisée pour comparer différentes sorties de cette fonction. Le type de données est int pour SQL Server 2008 (10.0.x) via SQL Server 2014 (12.x). Dans ces versions, la valeur est réinitialisée à 0 après environ 25 jours de temps d’activité continu du moteur de base de données. |
num_of_reads | bigint | Nombre de lectures effectuées sur le fichier. |
num_of_bytes_read | bigint | Nombre total d'octets lus sur ce fichier. |
io_stall_read_ms | bigint | Durée totale (en millisecondes) d'attente des utilisateurs pour les lectures effectuées sur le fichier. |
num_of_writes | bigint | Nombre d'écritures effectuées sur ce fichier. |
num_of_bytes_written | bigint | Nombre total d'octets écrits dans le fichier. |
io_stall_write_ms | bigint | Durée totale (en millisecondes) d'attente des utilisateurs pour les écritures effectuées sur le fichier. |
io_stall | bigint | Durée totale (en millisecondes) d'attente des utilisateurs pour les entrées/sorties effectuées sur le fichier. |
size_on_disk_bytes | bigint | Nombre d'octets utilisés sur le disque pour ce fichier. Pour les fichiers partiellement alloués, ce nombre est le nombre réel d'octets utilisés sur le disque pour les instantanés de la base de données. |
file_handle | varbinary | Descripteur de fichier Windows pour ce fichier. |
io_stall_queued_read_ms | bigint | Ne s’applique pas à :: SQL Server 2008 (10.0.x) via SQL Server 2012 (11.x). Latence totale d'E/S introduite par la gouvernance des ressources d'E/S pour les lectures. N'accepte pas la valeur NULL. Pour plus d’informations, consultez sys.dm_resource_governor_resource_pools (Transact-SQL). |
io_stall_queued_write_ms | bigint | Ne s’applique pas à :: SQL Server 2008 (10.0.x) via SQL Server 2012 (11.x). Latence totale d'E/S introduite par la gouvernance des ressources d'E/S pour les écritures. N'accepte pas la valeur NULL. |
pdw_node_id | int | S’applique à : Identificateur Azure Synapse Analytics du nœud pour la distribution. |
Notes
Les compteurs sont initialisés pour être vides chaque fois que le service SQL Server (MSSQLSERVER) est démarré.
autorisations
Nécessite l’autorisation VIEW SERVER STATE. Pour plus d’informations, consultez Vues et fonctions de gestion dynamique (Transact-SQL).
Autorisations pour SQL Server 2022 (et versions plus récentes)
Nécessite l’autorisation VIEW SERVER PERFORMANCE STATE sur le serveur.
Exemples
R. Retourner des statistiques pour un fichier journal
S’applique à : SQL Server 2008 (10.0.x) et versions ultérieures, Azure SQL Database
L’exemple suivant retourne des statistiques pour le fichier journal dans la base de données AdventureWorks2022.
SELECT * FROM sys.dm_io_virtual_file_stats(DB_ID(N'AdventureWorks2022'), 2);
GO
B. Retourner des statistiques pour le fichier dans tempdb
S’applique à : Azure Synapse Analytics
SELECT * FROM sys.dm_pdw_nodes_io_virtual_file_stats
WHERE database_name = 'tempdb' AND file_id = 2;
Voir aussi
Fonctions et vues de gestion dynamique (Transact-SQL)
Fonctions et vues de gestion dynamique associées aux E/S (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)