Freigeben über


fn_virtualfilestats (Transact-SQL)

Gibt E/A-Statistiken für Datenbankdateien zurück, einschließlich Protokolldateien. In SQL Server stehen diese Informationen auch in der dynamischen Verwaltungssicht sys.dm_io_virtual_file_stats zur Verfügung.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

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

Argumente

  • database_id | NULL
    Die ID der Datenbank. database_id ist vom Datentyp int und weist keinen Standardwert auf. Geben Sie NULL an, wenn Informationen zu allen Datenbanken in der Instanz von SQL Server zurückgegeben werden sollen.

  • file_id | NULL
    Die ID der Datei. file_id ist vom Datentyp int und weist keinen Standardwert auf. Geben Sie NULL an, wenn Informationen zu allen Dateien in der Datenbank zurückgegeben werden sollen.

Zurückgegebene Tabelle

Spaltenname

Datentyp

Beschreibung

DbId

smallint

Datenbank-ID

FileId

smallint

Datei-ID

TimeStamp

int

Datenbanktimestamp für den Zeitpunkt, zu dem die Daten erhoben wurden

NumberReads

bigint

Anzahl der Lesevorgänge, die für die Datei ausgegeben wurden

BytesRead

bigint

Anzahl der Bytes, die aus der Datei gelesen wurden

IoStallReadMS

bigint

Gesamtzeit in Millisekunden, die die Benutzer darauf gewartet haben, dass E/A-Leseoperationen für die Datei abgeschlossen wurden

NumberWrites

bigint

Anzahl der Schreibvorgänge, die für die Datei ausgeführt wurden

BytesWritten

bigint

Anzahl der Bytes, die in die Datei geschrieben wurden

IoStallWriteMS

bigint

Gesamtzeit in Millisekunden, die die Benutzer darauf gewartet haben, dass E/A-Schreiboperationen für die Datei abgeschlossen wurden

IoStallMS

bigint

Summe aus IoStallReadMS und IoStallWriteMS

FileHandle

bigint

Wert des Dateihandles

BytesOnDisk

bigint

Die physikalische Dateigröße (Anzahl der Bytes) auf dem Datenträger.

Bei Datenbankdateien ist dies der gleiche Wert wie size in sys.database_files; er wird jedoch in Bytes ausgedrückt, nicht in Seiten.

Bei Dateien mit geringer Dichte von Datenbankmomentaufnahmen ist dies der Speicherplatz, den das Betriebssystem für die Datei in Anspruch nimmt.

Hinweise

fn_virtualfilestats ist eine System-Tabellenwertfunktion, die statistische Informationen zurückgibt, wie beispielsweise die Gesamtzahl der E/A-Operationen, die für eine Datei ausgeführt wurden. Diese Funktion hilft beim Verfolgen der Zeitdauer, die Benutzer warten müssen, um eine Datei zu lesen oder darin zu schreiben. Diese Funktion hilft außerdem beim Identifizieren der Dateien mit hoher E/A-Aktivität.

Berechtigungen

Erfordert die VIEW SERVER STATE-Berechtigung auf dem Server.

Beispiele

A. Anzeigen von statistischen Informationen zu einer Datenbank

Das folgende Beispiel zeigt statistische Informationen zur Datei ID 1 in der Datenbank an, die die ID 1 hat.

SELECT *
FROM fn_virtualfilestats(1, 1);
GO

B. Anzeigen von statistischen Informationen zu einer benannten Datenbank und Datei

Das folgende Beispiel zeigt statistische Informationen zur Protokolldatei in der Beispieldatenbank AdventureWorks2008R2 an. Mithilfe der Systemfunktion DB_ID wird der database_id-Parameter angegeben.

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

C. Anzeigen von statistischen Informationen zu allen Datenbanken und Dateien

Das folgende Beispiel zeigt statistische Informationen zu allen Dateien in allen Datenbanken der Instanz von SQL Server an.

SELECT *
FROM fn_virtualfilestats(NULL,NULL);
GO