sys.fn_virtualfilestats (Transact-SQL)
Si applica a: SQL Server Database SQL di Azure Istanza gestita di SQL di Azure
Restituisce le statistiche di I/O per i file di database, compresi i file di log. In SQL Server queste informazioni sono disponibili anche nella vista a gestione dinamica sys.dm_io_virtual_file_stats .
Convenzioni relative alla sintassi Transact-SQL
Sintassi
fn_virtualfilestats ( { database_id | NULL } , { file_id | NULL } )
Argomenti
database_id | NULL
ID del database. database_id è di tipo int e non prevede alcun valore predefinito. Specificare NULL per restituire informazioni per tutti i database nell'istanza di SQL Server.
file_id | NULL
ID del file. file_id è int, senza impostazione predefinita. Specificare NULL per restituire informazioni per tutti i file del database.
Tabella restituita
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
DbId | smallint | ID del database. |
FileId | smallint | ID di file. |
TimeStamp | bigint | Timestamp del prelevamento dei dati. int nelle versioni precedenti a SQL Server 2016 (13.x). |
NumberReads | bigint | Numero di letture eseguite nel file. |
BytesRead | bigint | Numero di letture di byte eseguite nel file. |
IoStallReadMS | bigint | Periodo di tempo totale, in millisecondi, durante il quale gli utenti attendono il completamento delle operazioni di lettura I/O nel file. |
NumberWrites | bigint | Numero di scritture eseguite nel file. |
BytesWritten | bigint | Numero di scritture di byte eseguite nel file. |
IoStallWriteMS | bigint | Periodo di tempo totale, in millisecondi, durante il quale gli utenti attendono il completamento delle operazioni di scrittura I/O nel file. |
IoStallMS | bigint | Somma di IoStallReadMS e IoStallWriteMS. |
FileHandle | bigint | Valore dell'handle di file. |
BytesOnDisk | bigint | Dimensioni fisiche del file (numero di byte) su disco. Per i file di database, si tratta dello stesso valore delle dimensioni in sys.database_files, ma espresso in byte anziché in pagine. Per i file sparse di snapshot del database, è lo spazio utilizzato dal sistema operativo per il file. |
Osservazioni:
fn_virtualfilestats è una funzione con valori di tabella di sistema che fornisce informazioni statistiche, ad esempio il numero totale di operazioni di I/O eseguite su un file. Questa funzione consente di tenere traccia della durata dell'attesa da parte degli utenti per la lettura o la scrittura in un file. Consente inoltre di identificare i file in cui si verifica un elevato numero di operazioni di I/O.
Autorizzazioni
È richiesta l'autorizzazione VIEW SERVER STATE per il server.
Esempi
R. Visualizzazione di informazioni statistiche per un database
Nell'esempio seguente vengono visualizzate informazioni statistiche per il file con ID 1 nel database con ID 1
.
SELECT *
FROM fn_virtualfilestats(1, 1);
GO
B. Visualizzazione di informazioni statistiche per un database e un file con nome
Nell'esempio seguente vengono visualizzate informazioni statistiche per il file di log nel database di esempio AdventureWorks2022. La funzione DB_ID
di sistema viene usata per specificare il parametro database_id .
SELECT *
FROM fn_virtualfilestats(DB_ID(N'AdventureWorks2022'), 2);
GO
C. Visualizzazione di informazioni statistiche per tutti i database e i file
Nell'esempio seguente vengono visualizzate informazioni statistiche per tutti i file in tutti i database nell'istanza di SQL Server.
SELECT *
FROM fn_virtualfilestats(NULL,NULL);
GO
Vedi anche
DB_ID (Transact-SQL)
FILE_IDEX (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)