sys.dm_io_virtual_file_stats (Transact-SQL)

適用于:SQL ServerAzure SQL資料庫Azure SQL 受控執行個體Azure Synapse Analytics AnalyticsPlatform System (PDW)

傳回資料和記錄檔的 I/O 統計資料。 這個動態管理功能會取代 fn_virtualfilestats 函式。

注意

若要從 Azure Synapse Analytics 呼叫此專案,請使用名稱sys.dm_pdw_nodes_io_virtual_file_stats。 Azure Synapse Analytics 的無伺服器 SQL 集區不支援此語法。

語法

-- Syntax for SQL Server and Azure SQL Database

sys.dm_io_virtual_file_stats (   
    { database_id | NULL },  
    { file_id | NULL }  
)  
-- Syntax for Azure Synapse Analytics

sys.dm_pdw_nodes_io_virtual_file_stats

引數

database_id |空

適用于:SQL Server 2008 (10.0.x) 及更新版本,Azure SQL Database

資料庫的識別碼。 database_id 為 int,沒有預設值。 資料庫的識別碼或 NULL 都是有效的輸入。 指定 Null 時,會傳回 SQL Server 實例中的所有資料庫。

可以指定內建函數 DB_ID

file_id |空

適用于:SQL Server 2008 (10.0.x) 及更新版本,Azure SQL Database

檔案識別碼。 file_id 為 int,沒有預設值。 有效輸入是檔案的識別碼或 NULL。 如果指定 NULL,則會傳回資料庫中所有的檔案。

您可以指定內建 函式FILE_IDEX ,並參考目前資料庫中的檔案。

傳回的資料表

資料行名稱 資料類型 描述
database_name sysname 不適用於:: SQL Server。

資料庫名稱。

對於 Azure Synapse Analytics,這是儲存在pdw_node_id所識別之節點上的資料庫名稱。 每個節點都有一個具有 13 個檔案的 tempdb 資料庫。 每個節點每個散發也有一個資料庫,而每個散發資料庫都有 5 個檔案。 例如,如果每個節點包含 4 個散發套件,則結果會顯示每個pdw_node_id 20 個散發資料庫檔案。
database_id smallint 資料庫的識別碼。
file_id smallint 檔案的識別碼。
sample_ms bigint 自電腦啟動之後的毫秒數。 此資料行可用來比較此函式的不同輸出。

SQL Server 2008 (10.0.x) SQL Server 2014 (12.x) ,資料類型為int。 在這些版本中,此值會在大約 25 天的連續資料庫引擎執行時間之後重設為 0。
num_of_reads bigint 對檔案發出的讀取數。
num_of_bytes_read bigint 這個檔案讀取的總位元組數。
io_stall_read_ms bigint 使用者等候在檔案發出讀取的總時間 (以毫秒為單位)。
num_of_writes bigint 這個檔案所進行的寫入數。
num_of_bytes_written bigint 寫入檔案的總位元組數。
io_stall_write_ms bigint 使用者等候檔案完成寫入的總時間 (以毫秒為單位)。
io_stall bigint 使用者等候檔案完成 I/O 的總時間 (以毫秒為單位)。
size_on_disk_bytes bigint 該檔案在磁碟上所用的位元組數。 如果是疏鬆檔案,這個數字就是資料庫快照集在磁碟上所用的實際位元組數。
file_handle varbinary 這個檔案的 Windows 檔案控制代碼。
io_stall_queued_read_ms bigint 不適用於: SQL Server 2008 (10.0.x) 到 2012 SQL Server 2012 (11.x) 。

IO 資源管理針對讀取導入的總 IO 延遲。 不可為 Null。 如需詳細資訊,請參閱 sys.dm_resource_governor_resource_pools (Transact-SQL)
io_stall_queued_write_ms bigint 不適用於: SQL Server 2008 (10.0.x) 到 2012 SQL Server 2012 (11.x) 。

IO 資源管理針對寫入導入的總 IO 延遲。 不可為 Null。
pdw_node_id int 適用于:Azure Synapse

散發節點的分析識別碼。

備註

每當啟動 MSSQLSERVER SQL Server () 服務時,計數器就會初始化為空白。

權限

需要 VIEW SERVER STATE 權限。 如需詳細資訊,請參閱 Dynamic Management Views and Functions (Transact-SQL)

範例

A. 傳回記錄檔的統計資料

適用于:SQL Server 2008 (10.0.x) 及更新版本,Azure SQL Database

下列範例會傳回 AdventureWorks2019 資料庫中記錄檔的統計資料。

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

B. 傳回 tempdb 中檔案的統計資料

適用于:Azure Synapse Analytics

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

另請參閱

動態管理檢視和函數 (Transact-SQL)
I O 相關的動態管理檢視和函式 (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)