sys.dm_io_virtual_file_stats (Transact-SQL)
Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)
Возвращает статистику ввода-вывода для данных и файлов журнала. Эта функция динамического управления заменяет функцию fn_virtualfilestats .
Примечание.
Чтобы вызвать это из Azure Synapse Analytics, используйте имя sys.dm_pdw_nodes_io_virtual_file_stats. Этот синтаксис не поддерживается бессерверным пулом SQL в Azure Synapse Analytics.
Синтаксис
-- 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) и более поздние версии, База данных SQL Azure
Идентификатор базы данных. database_id не используется без значения по умолчанию. Допустимыми входными значениями являются идентификационный номер базы данных или NULL. При указании NULL возвращаются все базы данных в экземпляре SQL Server.
Можно указать встроенную функцию DB_ID .
file_id | НЕДЕЙСТВИТЕЛЬНЫЙ
Область применения: SQL Server 2008 (10.0.x) и более поздние версии, База данных SQL Azure
Идентификатор файла. file_id не используется без значения по умолчанию. Правильные значения — идентификационный номер файла или значение NULL. Когда указывается значение NULL, возвращаются все файлы базы данных.
Встроенная функция FILE_IDEX может быть указана и ссылается на файл в текущей базе данных.
Возвращаемая таблица
Имя столбца | Тип данных | Description |
---|---|---|
database_name | sysname | Не применяется к:: SQL Server. Имя базы данных. Для Azure Synapse Analytics это имя базы данных, хранящейся на узле, который определяется pdw_node_id. Каждый узел имеет одну базу данных tempdb с 13 файлами. Каждый узел также имеет одну базу данных на распределение, и каждая база данных распространителя содержит 5 файлов. Например, если каждый узел содержит 4 дистрибутива, результаты показывают 20 файлов базы данных распространителя на pdw_node_id. |
database_id | smallint | Идентификатор базы данных. В База данных SQL Azure значения уникальны в одной базе данных или эластичном пуле, но не в логическом сервере. |
file_id | smallint | Идентификатор файла. |
sample_ms | bigint | Число миллисекунд, прошедших со времени запуска компьютера. Этот столбец можно использовать для сравнения различных выходных данных этой функции. Тип данных не используется для SQL Server 2008 (10.0.x) до SQL Server 2014 (12.x). В этих версиях значение сбрасывается до 0 после примерно 25 дней непрерывного времени простоя ядра СУБД. |
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 | Общее время задержек выполнения операций чтения-записи над файлом, в миллисекундах. |
size_on_disk_bytes | bigint | Число байтов, используемых файлом на диске. Для разреженных файлов это показывает реальное число байт, занимаемых на диске, которое используется для моментальных снимков базы данных. |
file_handle | varbinary | Дескриптор данного файла в Windows. |
io_stall_queued_read_ms | bigint | Не применяется к:: SQL Server 2008 (10.0.x) до SQL Server 2012 (11.x). Общая задержка ввода-вывода, созданная регулированием ресурсов ввода-вывода для чтения. Не допускает значение NULL. Дополнительные сведения см. в разделе sys.dm_resource_governor_resource_pools (Transact-SQL). |
io_stall_queued_write_ms | bigint | Не применяется к:: SQL Server 2008 (10.0.x) до SQL Server 2012 (11.x). Общая задержка ввода-вывода, созданная регулированием ресурсов ввода-вывода для записи. Не допускает значение NULL. |
pdw_node_id | int | Область применения: Идентификатор Azure Synapse Analytics узла для распространения. |
Замечания
Счетчики инициализированы в пустое время при запуске службы SQL Server (MSSQLSERVER).
Разрешения
Необходимо разрешение VIEW SERVER STATE. Дополнительные сведения см. в статье "Динамические административные представления и функции" (Transact-SQL).
Разрешения для SQL Server 2022 и более поздних версий
Требуется разрешение VIEW SERVER PERFORMANCE STATE на сервере.
Примеры
А. Возврат статистики для файла журнала
Область применения: SQL Server 2008 (10.0.x) и более поздние версии, База данных SQL Azure
В следующем примере возвращается статистика для файла журнала в базе данных AdventureWorks2022.
SELECT * FROM sys.dm_io_virtual_file_stats(DB_ID(N'AdventureWorks2022'), 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 Related Dynamic Management Views and Functions (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)