Megosztás a következőn keresztül:


sys.dm_io_virtual_file_stats (Transact-SQL)

Vonatkozik a következőkre:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalitikai Platform System (PDW)SQL adatbázis a Microsoft Fabric-ben

Visszaadja az I/O statisztikákat az adatokhoz és naplófájlokhoz. Ez a dinamikus menedzsment funkció helyettesíti a fn_virtualfilestats funkciót.

Megjegyzés:

Az Azure Synapse Analytics dinamikus menedzsment nézetének (DMV) megnevezéséhez használd a következő nevet sys.dm_pdw_nodes_io_virtual_file_stats : Ez a szintaxis nem támogatott szerver nélküli SQL pool az Azure Synapse Analytics-ben.

Szemantika

Az SQL Server és az Azure SQL Database szintaxisa:

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

Az Azure Synapse Analytics szintaxisa:

sys.dm_pdw_nodes_io_virtual_file_stats

Arguments

database_id | NULLA

Alkalmazható: SQL Server 2008 (10.0.x) és újabbabb, Azure SQL Database

Az adatbázis azonosítója. database_id int, alapértelmezett nélkül. Az érvényes bemenetek egy adatbázis azonosító száma vagy NULL. Amikor NULL meg van jelölve, az SQL Server példányában lévő összes adatbázis visszakerül.

Megadhatja a beépített DB_ID függvényt.

file_id | NULLA

Alkalmazható: SQL Server 2008 (10.0.x) és újabbabb, Azure SQL Database

Az akta azonosítója. file_id int, alapértelmezett nélkül. Az érvényes bemenetek egy fájl azonosító száma vagy NULL. Ha NULL meg van jelölve, az adatbázisban lévő összes fájl visszakerül.

A beépített funkció FILE_IDEX meghatározható, és a jelenlegi adatbázisban lévő fájlra utal.

Visszaadott tábla

Oszlop név Adattípus Description
database_name sysname Adatbázis neve.

Az Azure Synapse Analytics esetében ez az adatbázis neve, amelyet a csomóponton tárolnak, amelyet a .pdw_node_id Minden csomópontnak van egy tempdb adatbázisa, amely 13 fájlból áll. Minden csomópontnak van egy adatbázisa egy disztribúciónként, és minden disztribúció adatbázisban öt fájl található. Például, ha minden csomópont négy eloszlást tartalmaz, az eredmények 20 eloszlási adatbázis-fájlt mutatnak minden egyes pdw_node_id.

Nem vonatkozik az SQL Serverre.
database_id smallint Az adatbázis azonosítója.

Az Azure SQL Database-ben az értékek egyediek egyetlen adatbázisban vagy rugalmas készletben, de nem logikai kiszolgálón belül.
file_id smallint A fájl azonosítója.
sample_ms bigint A számítógép indítása óta eltelt milliszekundumok száma. Ez az oszlop összehasonlítható különböző kimenetek összehasonlítására ebből a függvényből.

Az adattípus az int SQL Server 2014 (12.x) és korábbi verziókhoz. Ezekben a verziókban az érték körülbelül 25 nap folyamatos adatbázis-motor üzemidő után nullára áll.
num_of_reads bigint A fájlban kiadott olvasások száma.
num_of_bytes_read bigint A fájl összes bájtja olvasható.
io_stall_read_ms bigint Az összes idő, milliszekundumokban, amíg a felhasználók vártak a fájlon megjelent olvasásokra.
num_of_writes bigint A fájlban végzett írások száma.
num_of_bytes_written bigint A fájlhoz írt bájtok összesített száma.
io_stall_write_ms bigint Az összesen milliszekundumokban jelentett idő, amíg a felhasználók megvárták, hogy a fájl írásai befejeződjenek.
io_stall bigint Az összes idő, milliszekundumokban, amíg a felhasználók megvárták, hogy az I/O befejeződjön a fájlon.
size_on_disk_bytes bigint A lemezen használt bájtok száma ehhez a fájlhoz. Ritka fájlok esetén ez a szám a lemezen lévő bájtok tényleges száma, amelyeket adatbázis-snapshotokhoz használnak.
file_handle varbinary Windows fájlkezelő ehhez a fájlhoz.
io_stall_queued_read_ms bigint Teljes IO késleltetés, amelyet az IO erőforrás-menedzsment vezetett be olvasásokhoz. Nem nullázható. További információért lásd: sys.dm_resource_governor_resource_pools.

Nem vonatkozik az SQL Server 2012 (11.x) és korábbi verziókra.
io_stall_queued_write_ms bigint Teljes IO késleltetés, amelyet az IO erőforrás-menedzsment vezetett be írásokhoz. Nem nullázható.

Nem vonatkozik az SQL Server 2012 (11.x) és korábbi verziókra.
pdw_node_id int A csomópont azonosítója az eloszláshoz.

A következővonatkozik: Azure Synapse Analytics

Megjegyzések

A számlálókat inicializálják, hogy üressenek, amikor az SQL Server (MSSQLSERVER) szolgáltatás elindul.

Permissions

Az SQL Server 2019 (15.x) és a korábbi verziók engedélyhez szükségesek VIEW SERVER STATE .

Az SQL Server 2022 (16.x) és újabb verzióinak engedélyre van szükségük VIEW SERVER PERFORMANCE STATE a kiszolgálón.

Példák

A cikkben szereplő kódminták a AdventureWorks2025 vagy AdventureWorksDW2025 mintaadatbázist használják, amelyet a Microsoft SQL Server-minták és közösségi projektek kezdőlapjáról tölthet le.

A. Visszavallási statisztikák egy naplófájlhoz

Alkalmazható: SQL Server és Azure SQL Database

A következő példa a AdventureWorks2025 adatbázisban található naplófájl statisztikáit adja vissza.

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

B. Visszaküldési statisztikák a tempdb-ben lévő fájlhoz

A következővonatkozik: Azure Synapse Analytics

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