Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistema di Piattaforma Analitica (PDW)
Database SQL in Microsoft Fabric
Restituisce le statistiche di I/O per i file di log e di dati. Questa funzione di gestione dinamica sostituisce la funzione fn_virtualfilestats .
Nota
Per chiamare questa vista di gestione dinamica (DMV) di Azure Synapse Analytics, usa il nome sys.dm_pdw_nodes_io_virtual_file_stats Questa sintassi non è supportata dal server less SQL pool in Azure Synapse Analytics.
Sintassi
Sintassi per SQL Server e database SQL di Azure:
sys.dm_io_virtual_file_stats (
{ database_id | NULL } ,
{ file_id | NULL }
)
Sintassi per Azure Synapse Analytics:
sys.dm_pdw_nodes_io_virtual_file_stats
Argomenti
database_id | NULLO
Si applica a: SQL Server 2008 (10.0.x) e successivamente, Azure SQL Database
ID del database.
database_id è int, senza impostazione predefinita. Gli input validi sono il numero ID di un database o NULL. Quando NULL viene specificato, tutti i database nell'istanza di SQL Server vengono restituiti.
È possibile specificare la funzione predefinita DB_ID.
file_id | NULLO
Si applica a: SQL Server 2008 (10.0.x) e successivamente, Azure SQL Database
ID del file.
file_id è int, senza impostazione predefinita. Gli input validi sono il numero ID di un file o NULL. Quando NULL viene specificato, tutti i file presenti nel database vengono restituiti.
È possibile specificare la funzione predefinita FILE_IDEX e fa riferimento a un file nel database corrente.
Tabella restituita
| Nome colonna | Tipo di dati | Descrizione |
|---|---|---|
database_name |
sysname | Nome del database. Per Azure Synapse Analytics, questo è il nome del database memorizzato sul nodo identificato da pdw_node_id. Ogni nodo ha un tempdb database che contiene 13 file. Ogni nodo ha anche un database per distribuzione, e ogni database di distribuzione ha cinque file. Ad esempio, se ogni nodo contiene quattro distribuzioni, i risultati mostrano 20 file database di distribuzione per pdw_node_idogni .Non si applica a: SQL Server. |
database_id |
smallint | ID del database. In database SQL di Azure i valori sono univoci all'interno di un database singolo o di un pool elastico, ma non all'interno di un server logico. |
file_id |
smallint | ID di file. |
sample_ms |
bigint | Numero di millisecondi dall'avvio del computer. Questa colonna può essere utilizzata per confrontare diversi output di questa funzione. Il tipo di dato è int per SQL Server 2014 (12.x) e versioni precedenti. In queste versioni, il valore verrà reimpostato su 0 dopo circa 25 giorni di tempo di attività continuo del motore di database. |
num_of_reads |
bigint | Numero di letture eseguite nel file. |
num_of_bytes_read |
bigint | Numero totale di byte letti nel file. |
io_stall_read_ms |
bigint | Tempo totale di attesa degli utenti, in millisecondi, per il completamento delle operazioni di lettura nel file. |
num_of_writes |
bigint | Numero di scritture eseguite nel file. |
num_of_bytes_written |
bigint | Numero totale di byte scritti nel file. |
io_stall_write_ms |
bigint | Tempo totale di attesa degli utenti, in millisecondi, per il completamento delle operazioni di scrittura nel file. |
io_stall |
bigint | Tempo totale di attesa degli utenti, in millisecondi, per il completamento delle operazioni di I/O nel file. |
size_on_disk_bytes |
bigint | Numero di byte utilizzati nel disco per il file. Per i file sparse, questo numero corrisponde al numero effettivo di byte nel disco utilizzati per gli snapshot di database. |
file_handle |
varbinary | Handle di file Windows per il file. |
io_stall_queued_read_ms |
bigint | Latenza di I/O totale introdotta dalla governance delle risorse di I/O per le letture. Non ammette i valori NULL. Per maggiori informazioni, vedi sys.dm_resource_governor_resource_pools. Non si applica a: SQL Server 2012 (11.x) e versioni precedenti. |
io_stall_queued_write_ms |
bigint | Latenza di I/O totale introdotta dalla governance delle risorse di I/O per le scritture. Non ammette i valori NULL. Non si applica a: SQL Server 2012 (11.x) e versioni precedenti. |
pdw_node_id |
int | Identificatore del nodo per la distribuzione. Si applica a: Azure Synapse Analytics |
Osservazioni:
I contatori vengono inizializzati in modo vuoto ogni volta che viene avviato il servizio SQL Server (MSSQLSERVER).
Autorizzazioni
SQL Server 2019 (15.x) e versioni precedenti richiedono VIEW SERVER STATE l'autorizzazione.
SQL Server 2022 (16.x) e versioni successive richiedono VIEW SERVER PERFORMANCE STATE l'autorizzazione per il server.
Esempi
Gli esempi di codice in questo articolo usano il database di esempio AdventureWorks2025 o AdventureWorksDW2025, che è possibile scaricare dalla home page Microsoft SQL Server Samples and Community Projects.
R. Restituire statistiche per un file di log
Si applica a: SQL Server e Azure SQL Database
Il seguente esempio restituisce statistiche per il file di log nel database AdventureWorks2025.
SELECT *
FROM sys.dm_io_virtual_file_stats(DB_ID(N'AdventureWorks2025'), 2);
B. Restituire statistiche per il file in tempdb
Si applica a: Azure Synapse Analytics
SELECT *
FROM sys.dm_pdw_nodes_io_virtual_file_stats
WHERE database_name = 'tempdb'
AND file_id = 2;