Sdílet prostřednictvím


sys.dm_io_virtual_file_stats (Transact-SQL)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)databáze SQL v Microsoft Fabric

Vrací I/O statistiky pro data a logovací soubory. Tato dynamická řídicí funkce nahrazuje funkci fn_virtualfilestats .

Poznámka:

Pro vyvolání tohoto dynamického pohledu správy (DMV) z Azure Synapse Analytics použijte název sys.dm_pdw_nodes_io_virtual_file_stats Tato syntaxe není podporována serverless SQL poolem v Azure Synapse Analytics.

Syntaxe

Syntaxe pro SQL Server a Azure SQL Database:

sys.dm_io_virtual_file_stats (
    { database_id | NULL } ,
    { file_id | NULL }
)

Syntaxe pro Azure Synapse Analytics:

sys.dm_pdw_nodes_io_virtual_file_stats

Arguments

database_id | NULA

Platí na: SQL Server 2008 (10.0.x) a později Azure SQL Database

ID databáze. database_id je inteligence, bez výchozího nastavení. Platné vstupy jsou ID číslo databáze nebo NULL. Když NULL je specifikován, všechny databáze v instanci SQL Serveru se vrátí.

Lze zadat předdefinovanou funkci DB_ID .

file_id | NULA

Platí na: SQL Server 2008 (10.0.x) a později Azure SQL Database

ID souboru. file_id je inteligence, bez výchozího nastavení. Platné vstupy jsou ID číslo souboru nebo NULL. Když NULL je specifikováno, všechny soubory v databázi se vrátí.

Vestavěná funkce FILE_IDEX lze specifikovat a odkazuje na soubor v aktuální databázi.

Vrácená tabulka

Název sloupce Datový typ Description
database_name sysname Název databáze.

Pro Azure Synapse Analytics je to název databáze uložené na uzlu identifikovaném .pdw_node_id Každý uzel má jednu tempdb databázi obsahující 13 souborů. Každý uzel má také jednu databázi na distribuci a každá distribuční databáze má pět souborů. Například pokud každý uzel obsahuje čtyři distribuce, výsledky ukazují 20 databázových souborů distribucí na .pdw_node_id

Nevztahuje se na: SQL Server.
database_id smallint ID databáze.

Ve službě Azure SQL Database jsou hodnoty jedinečné v rámci jedné databáze nebo elastického fondu, ale ne v rámci logického serveru.
file_id smallint ID souboru.
sample_ms bigint Počet milisekund od spuštění počítače. Tento sloupec lze použít k porovnání různých výstupů z této funkce.

Datový typ je int pro SQL Server 2014 (12.x) a starší verze. V těchto verzích se hodnota resetuje na 0 přibližně po 25 dnech nepřetržitého provozu databázového enginu.
num_of_reads bigint Počet přečtených čtení na spis.
num_of_bytes_read bigint Celkový počet přečtených bajtů v tomto souboru.
io_stall_read_ms bigint Celkový čas, v milisekundách, který uživatelé čekali na čtení souboru vydaná v milisekundách.
num_of_writes bigint Počet zápisů provedených na tomto souboru.
num_of_bytes_written bigint Celkový počet bajtů zapsaných do souboru.
io_stall_write_ms bigint Celkový čas, v milisekundách, kdy uživatelé čekali na dokončení zápisu souboru.
io_stall bigint Celkový čas, v milisekundách, kdy uživatelé čekali na dokončení I/O na souboru.
size_on_disk_bytes bigint Počet bajtů použitých na disku pro tento soubor. U řídkých souborů je toto číslo skutečný počet bajtů na disku, které se používají pro databázové snímky.
file_handle varbinary Windows přezdívka pro tento soubor.
io_stall_queued_read_ms bigint Celková IO latence zavedená správou IO zdrojů pro čtení. Není nulovatelný. Pro více informací viz sys.dm_resource_governor_resource_pools.

Nevztahuje se na: SQL Server 2012 (11.x) a starší verze.
io_stall_queued_write_ms bigint Celková IO latence zavedená správou IO zdrojů pro zápisy. Není nulovatelný.

Nevztahuje se na: SQL Server 2012 (11.x) a starší verze.
pdw_node_id int Identifikátor uzlu pro distribuci.

platí pro: Azure Synapse Analytics

Poznámky

Čítače jsou inicializovány tak, aby se vyprázdnily pokaždé, když je služba SQL Server (MSSQLSERVER) spuštěna.

Povolení

SQL Server 2019 (15.x) a starší verze vyžadují VIEW SERVER STATE oprávnění.

SQL Server 2022 (16.x) a novější verze vyžadují VIEW SERVER PERFORMANCE STATE oprávnění k serveru.

Examples

Ukázky kódu v tomto článku používají ukázkovou databázi AdventureWorks2025 nebo AdventureWorksDW2025, kterou si můžete stáhnout z domovské stránky Microsoft SQL Serveru pro ukázky a komunitní projekty .

A. Vraťte statistiky pro logovací soubor

Platí na: SQL Server a Azure SQL Database

Následující příklad vrací statistiky pro log soubor v databázi AdventureWorks2025.

SELECT *
FROM sys.dm_io_virtual_file_stats(DB_ID(N'AdventureWorks2025'), 2);

B. Vrácení statistik souboru v tempdb

platí pro: Azure Synapse Analytics

SELECT *
FROM sys.dm_pdw_nodes_io_virtual_file_stats
WHERE database_name = 'tempdb'
      AND file_id = 2;