Bagikan melalui


sys.dm_io_virtual_file_stats (Transact-SQL)

Berlaku untuk:SQL ServerDatabase Azure SQLInstans Terkelola Azure SQLAzure Synapse AnalyticsSistem Platform Analitik (PDW)Database SQL di Microsoft Fabric

Mengembalikan statistik I/O untuk file data dan log. Fungsi manajemen dinamis ini menggantikan fungsi fn_virtualfilestats .

Catatan

Untuk memanggil tampilan manajemen dinamis (DMV) ini dari Azure Synapse Analytics, gunakan nama sys.dm_pdw_nodes_io_virtual_file_stats Sintaks ini tidak didukung oleh kumpulan SQL tanpa server di Azure Synapse Analytics.

Sintaks

Sintaks untuk SQL Server dan Azure SQL Database:

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

Sintaks untuk Azure Synapse Analytics:

sys.dm_pdw_nodes_io_virtual_file_stats

Argumen

database_id | NOL

Berlaku untuk: SQL Server 2008 (10.0.x) dan yang lebih baru, Azure SQL Database

ID database. database_id int, tanpa default. Input yang valid adalah nomor ID database atau NULL. Saat NULL ditentukan, semua database dalam instans SQL Server dikembalikan.

Fungsi bawaan DB_ID dapat ditentukan.

file_id | NOL

Berlaku untuk: SQL Server 2008 (10.0.x) dan yang lebih baru, Azure SQL Database

ID file. file_id int, tanpa default. Input yang valid adalah nomor ID file atau NULL. Ketika NULL ditentukan, semua file pada database dikembalikan.

Fungsi bawaan FILE_IDEX dapat ditentukan, dan mengacu pada file dalam database saat ini.

Tabel dikembalikan

Nama kolom Jenis data Deskripsi
database_name nama sysname Nama database.

Untuk Azure Synapse Analytics, ini adalah nama database yang disimpan pada simpul yang diidentifikasi oleh pdw_node_id. Setiap node memiliki satu tempdb database yang memiliki 13 file. Setiap node juga memiliki satu database per distribusi, dan setiap database distribusi memiliki lima file. Misalnya, jika setiap simpul berisi empat distribusi, hasilnya menunjukkan 20 file database distribusi per pdw_node_id.

Tidak berlaku untuk: SQL Server.
database_id smallint ID database.

Di Azure SQL Database, nilainya unik dalam satu database atau kumpulan elastis, tetapi tidak dalam server logis.
file_id smallint ID file.
sample_ms bigint Jumlah milidetik sejak komputer dimulai. Kolom ini dapat digunakan untuk membandingkan output yang berbeda dari fungsi ini.

Jenis data adalah int untuk SQL Server 2014 (12.x) dan versi sebelumnya. Dalam versi ini, nilai akan diatur ulang ke 0 setelah sekitar 25 hari waktu aktif mesin database berkelanjutan.
num_of_reads bigint Jumlah bacaan yang dikeluarkan pada file.
num_of_bytes_read bigint Jumlah total byte yang dibaca pada file ini.
io_stall_read_ms bigint Total waktu, dalam milidetik, bahwa pengguna menunggu pembacaan yang dikeluarkan pada file.
num_of_writes bigint Jumlah penulisan yang dibuat pada file ini.
num_of_bytes_written bigint Jumlah total byte yang ditulis ke file.
io_stall_write_ms bigint Total waktu, dalam milidetik, pengguna tersebut menunggu penulisan selesai pada file.
io_stall bigint Total waktu, dalam milidetik, pengguna tersebut menunggu I/O selesai pada file.
size_on_disk_bytes bigint Jumlah byte yang digunakan pada disk untuk file ini. Untuk file jarang, angka ini adalah jumlah byte aktual pada disk yang digunakan untuk rekam jepret database.
file_handle varbinary Handel file Windows untuk file ini.
io_stall_queued_read_ms bigint Total latensi IO yang diperkenalkan oleh tata kelola sumber daya IO untuk pembacaan. Tidak dapat diubah ke null. Untuk informasi selengkapnya, lihat sys.dm_resource_governor_resource_pools.

Tidak berlaku untuk: SQL Server 2012 (11.x) dan versi sebelumnya.
io_stall_queued_write_ms bigint Total latensi IO yang diperkenalkan oleh tata kelola sumber daya IO untuk penulisan. Tidak dapat diubah ke null.

Tidak berlaku untuk: SQL Server 2012 (11.x) dan versi sebelumnya.
pdw_node_id int Pengidentifikasi simpul untuk distribusi.

Berlaku untuk: Azure Synapse Analytics

Keterangan

Penghitung diinisialisasi untuk kosong setiap kali layanan SQL Server (MSSQLSERVER) dimulai.

Izin

SQL Server 2019 (15.x) dan versi yang lebih lama memerlukan VIEW SERVER STATE izin.

SQL Server 2022 (16.x) dan versi yang lebih baru memerlukan VIEW SERVER PERFORMANCE STATE izin di server.

Contoh

Sampel kode dalam artikel ini menggunakan database sampel AdventureWorks2025 atau AdventureWorksDW2025, yang dapat Anda unduh dari halaman beranda Sampel dan Proyek Komunitas Microsoft SQL Server.

J. Mengembalikan statistik untuk file log

Berlaku untuk: SQL Server dan Azure SQL Database

Contoh berikut mengembalikan statistik untuk file log dalam database AdventureWorks2025.

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

B. Mengembalikan statistik untuk file dalam tempdb

Berlaku untuk: Azure Synapse Analytics

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