sys.fn_virtualfilestats (Transact-SQL)

Aplica-se a: SQL ServerBanco de Dados SQL do Azure Instância Gerenciada de SQL do Azure

Retorna estatísticas de E/S para arquivos de banco de dados, incluindo arquivos de log. No SQL Server, essas informações também estão disponíveis na exibição de gerenciamento dinâmico sys.dm_io_virtual_file_stats .

Convenções de sintaxe de Transact-SQL

Sintaxe

  
fn_virtualfilestats ( { database_id | NULL } , { file_id | NULL } )  

Argumentos

database_id | ZERO
É a ID do banco de dados. database_id é int, sem padrão. Especifique NULL para retornar informações para todos os bancos de dados na instância do SQL Server.

file_id | ZERO
É a ID do arquivo. file_id é int, sem padrão. Especifique NULL para retornar informações de todos os arquivos do banco de dados.

Tabela retornada

Nome da Coluna Tipo de dados Descrição
DbId smallint ID do banco de dados.
FileId smallint ID do arquivo.
TimeStamp bigint Carimbo de data/hora do banco de dados do qual os dados foram obtidos. int em versões anteriores ao SQL Server 2016 (13.x).
Leituras de número bigint Número de leituras emitidas no arquivo.
BytesRead bigint Número de bytes lidos emitidos no arquivo.
IoStallReadMS bigint Período de tempo total, em milissegundos, que os usuários esperaram pela conclusão das E/Ss de leitura no arquivo.
NumeroGravações bigint Número de gravações feitas no arquivo.
BytesWritten bigint Número de bytes gravados no arquivo.
IoStallWriteMS bigint Período de tempo total, em milissegundos, que os usuários esperaram pela conclusão das E/Ss de gravação no arquivo.
IoStallMS bigint Soma de IoStallReadMS e IoStallWriteMS.
FileHandle bigint Valor do identificador de arquivo.
BytesOnDisk bigint Tamanho do arquivo físico (contagem de bytes) em disco.

Para arquivos de banco de dados, esse é o mesmo valor que o tamanho em sys.database_files, mas é expresso em bytes em vez de páginas.

Para arquivos esparsos de instantâneo do banco de dados, este é o espaço que o sistema operacional está usando para o arquivo.

Comentários

fn_virtualfilestats é uma função com valor de tabela do sistema que fornece informações estatísticas, como o número total de E/S executadas em um arquivo. Você pode usar essa função para ajudar a manter o controle do período de tempo que os usuários esperaram para ler ou gravar em um arquivo. A função também ajuda a identificar os arquivos que encontram grande quantidade de atividade de E/S.

Permissões

, é necessário ter permissão VIEW SERVER STATE no servidor.

Exemplos

R. Exibindo informações estatísticas para um banco de dados

O exemplo a seguir exibe informações estatísticas para o ID de arquivo 1 no banco de dados com um ID 1.

SELECT *  
FROM fn_virtualfilestats(1, 1);  
GO  

B. Exibindo informações estatísticas para um banco de dados e arquivo nomeados

O exemplo a seguir exibe informações estatísticas para o arquivo de log no banco de dados de exemplo AdventureWorks2022. A função DB_ID do sistema é usada para especificar o parâmetro database_id .

SELECT *  
FROM fn_virtualfilestats(DB_ID(N'AdventureWorks2022'), 2);  
GO  

C. Exibindo informações estatísticas para todos os bancos de dados e arquivos

O exemplo a seguir exibe informações estatísticas para todos os arquivos em todos os bancos de dados na instância do SQL Server.

SELECT *  
FROM fn_virtualfilestats(NULL,NULL);  
GO  

Confira também

DB_ID (Transact-SQL)
FILE_IDEX (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)