sys.dm_io_virtual_file_stats (Transact-SQL)
Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure PDW (Sistema de Plataforma de Análise) do Azure Synapse Analytics
Retorna estatísticas de E/S para arquivos de dados e de log. Essa função de gerenciamento dinâmico substitui a função fn_virtualfilestats .
Observação
Para chamar isso do Azure Synapse Analytics, use o nome sys.dm_pdw_nodes_io_virtual_file_stats. Não há suporte a essa sintaxe para o pool de SQL sem servidor no Azure Synapse Analytics.
Sintaxe
-- 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
Argumentos
database_id | ZERO
Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores, Banco de Dados SQL do Azure
ID do banco de dados. database_id é int, sem padrão. São entradas válidas o número de ID de um banco de dados ou NULL. Quando NULL é especificado, todos os bancos de dados na instância do SQL Server são retornados.
A função interna DB_ID pode ser especificada.
file_id | ZERO
Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores, Banco de Dados SQL do Azure
ID do arquivo. file_id é int, sem padrão. São entradas válidas o número de ID de um arquivo ou NULL. Quando NULL for especificado, serão retornados todos os arquivos do banco de dados.
A função interna FILE_IDEX pode ser especificada e refere-se a um arquivo no banco de dados atual.
Tabela retornada
Nome da coluna | Tipo de dados | Descrição |
---|---|---|
database_name | sysname | Não se aplica a:: SQL Server. Nome do banco de dados. Para o Azure Synapse Analytics, esse é o nome do banco de dados armazenado no nó identificado por pdw_node_id. Cada nó tem um banco de dados tempdb com 13 arquivos. Cada nó também tem um banco de dados por distribuição e cada banco de dados de distribuição tem 5 arquivos. Por exemplo, se cada nó contiver 4 distribuições, os resultados mostrarão 20 arquivos de banco de dados de distribuição por pdw_node_id. |
database_id | smallint | ID do banco de dados. No Banco de Dados SQL do Azure, os valores são exclusivos em um único banco de dados ou em um pool elástico, mas não em um servidor lógico. |
file_id | smallint | ID de arquivo. |
sample_ms | bigint | Número de milissegundos desde que o computador foi iniciado. Essa coluna pode ser usada para comparar diferentes saídas dessa função. O tipo de dados é int para SQL Server 2008 (10.0.x) até SQL Server 2014 (12.x). Nessas versões, o valor será redefinido para 0 após aproximadamente 25 dias de tempo de atividade contínuo do mecanismo de banco de dados. |
num_of_reads | bigint | Número de leituras emitidas no arquivo. |
num_of_bytes_read | bigint | Número total de bytes lidos no arquivo. |
io_stall_read_ms | bigint | Tempo total, em milissegundos, que os usuários aguardaram pelas leituras emitidas no arquivo. |
num_of_writes | bigint | Número de gravações feitas no arquivo. |
num_of_bytes_written | bigint | Número total de bytes gravados no arquivo. |
io_stall_write_ms | bigint | Tempo total, em milissegundos, que os usuários aguardaram até o término das gravações no arquivo. |
io_stall | bigint | Tempo total, em milissegundos, que os usuários aguardaram até o término de E/S no arquivo. |
size_on_disk_bytes | bigint | Número de bytes do disco usado por esse arquivo. No caso de arquivos esparsos, esse número é o número real de bytes do disco que é utilizado para os instantâneos do banco de dados. |
file_handle | varbinary | Identificador de arquivo do Windows desse arquivo. |
io_stall_queued_read_ms | bigint | Não se aplica a:: SQL Server 2008 (10.0.x) até SQL Server 2012 (11.x). Latência total de E/S apresentada pela administração do recurso de E/S para leituras. Não permite valor nulo. Para obter mais informações, confira sys.dm_resource_governor_resource_pools (Transact-SQL). |
io_stall_queued_write_ms | bigint | Não se aplica a:: SQL Server 2008 (10.0.x) até SQL Server 2012 (11.x). Latência total de E/S apresentada pela administração do recurso de E/S para gravações. Não permite valor nulo. |
pdw_node_id | int | Aplica-se a: Identificador do Azure Synapse Analytics do nó para a distribuição. |
Comentários
Os contadores são inicializados para esvaziar sempre que o serviço SQL Server (MSSQLSERVER) é iniciado.
Permissões
Requer a permissão VIEW SERVER STATE. Para obter mais informações, consulte Exibições e funções de gerenciamento dinâmico (Transact-SQL).
Permissões do SQL Server 2022 e posteriores
É necessária a permissão VIEW SERVER PERFORMANCE STATE no servidor.
Exemplos
R. Retornar estatísticas para um arquivo de log
Aplica-se a: SQL Server 2008 (10.0.x) e versões posteriores, Banco de Dados SQL do Azure
O exemplo a seguir retorna estatísticas para o arquivo de log no banco de dados AdventureWorks2022.
SELECT * FROM sys.dm_io_virtual_file_stats(DB_ID(N'AdventureWorks2022'), 2);
GO
B. Retornar estatísticas para o arquivo em tempdb
Aplica-se ao: Azure Synapse Analytics
SELECT * FROM sys.dm_pdw_nodes_io_virtual_file_stats
WHERE database_name = 'tempdb' AND file_id = 2;
Confira também
Exibições e funções de gerenciamento dinâmico (Transact-SQL)
Exibições e funções de gerenciamento dinâmico relacionadas à EO (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)