sys.dm_io_virtual_file_stats (Transact-sql)

適用対象: はいSQL Server (サポートされているすべてのバージョン) はいAzure SQL データベース はいAzure SQL Managed Instance はいAzure Synapse Analytics

データファイルとログファイルの i/o 統計を返します。 この動的管理関数は、 fn_virtualfilestats 関数を置き換えます。

注意

これをから呼び出すには Azure Synapse Analytics 、 sys.dm_pdw_nodes_io_virtual_file_stats という名前を使用します。

構文

-- 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 | NULL

適用対象: SQL Server (2008 以降)、Azure SQL Database

データベースの ID です。 database_id は int,、既定値はありません。 有効な入力値は、データベースの ID 番号または NULL です。 NULL を指定した場合、SQL Server インスタンス内のすべてのデータベースが返されます。

組み込み関数 DB_ID を指定できます。

file_id | NULL

適用対象: SQL Server (2008 以降)、Azure SQL Database

ファイルの ID。 file_id は int,、既定値はありません。 有効な入力値は、ファイルの ID 番号または NULL です。 NULL を指定すると、データベース上のすべてのファイルが返されます。

組み込み関数 FILE_IDEX を指定でき、現在のデータベース内のファイルを参照します。

返されるテーブル

列名 データ型 説明
database_name sysname 次のものには適用されません:: SQL Server 。

データベース名。

Azure Synapse Analytics の場合、これは pdw_node_id によって識別されるノードに格納されているデータベースの名前です。 各ノードには、13個のファイルを持つ tempdb データベースが1つあります。 各ノードには、ディストリビューションごとに1つのデータベースがあり、各ディストリビューションデータベースには5つのファイルがあります。 たとえば、各ノードに4つのディストリビューションが含まれている場合、結果には pdw_node_id あたり20個のディストリビューションデータベースファイルが表示されます。
database_id smallint データベースの ID。
file_id smallint ファイルの ID。
sample_ms bigint コンピューターの起動後に経過した時間 (ミリ秒単位)。 この列を使用して、この関数とは異なる出力を比較できます。
データ型は、 を SQL Server 2008 通じて int です SQL Server 2014 (12.x) 。 これらのバージョンでは、連続したデータベースエンジンの稼働時間の約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 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 SQL Server 2012 (11.x) 。

書き込みの IO リソースガバナンスによって導入された IO 待機時間の合計。 NULL 値は許可されません。
pdw_node_id int 適用対象: Azure Synapse Analytics
分布のノードの識別子。

解説

カウンタは、SQL Server (MSSQLSERVER) サービスが開始されるたびに空に初期化されます。

アクセス許可

VIEW SERVER STATE 権限が必要です。 詳細については、「 transact-sql)(動的管理ビューと関数 」を参照してください。

A. ログファイルの統計を返す

適用対象: SQL Server (2008 以降)、Azure SQL Database

次の例では、AdventureWorks2012 データベースのログ ファイルに関するすべての統計を返します。

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)