sys.fn_virtualfilestats (Transact-SQL)
Retorna estatísticas de E/S para arquivos de banco de dados, incluindo arquivos de log. No SQL Server, estas informações também estão disponíveis a partir da exibição de gerenciamento dinâmico sys.dm_io_virtual_file_stats.
Convenções da sintaxe Transact-SQL
Sintaxe
fn_virtualfilestats ( { database_id | NULL } , { file_id | NULL } )
Argumentos
database_id | NULL
É a ID do banco de dados. database_id é int, sem padrão. Especifique NULL para retornar informações de todos os bancos de dados na instância do SQL Server.file_id | NULL
É 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 |
int |
Carimbo de data/hora do banco de dados do qual os dados foram obtidos. |
NumberReads |
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. |
NumberWrites |
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 size 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 de sistema com valor de tabela que fornece informações estatísticas, como o número total de E/Ss 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
Requer a permissão VIEW SERVER STATE no servidor.
Exemplos
A.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 AdventureWorks2012. A função de sistema DB_ID é usada para especificar o parâmetro database_id.
SELECT *
FROM fn_virtualfilestats(DB_ID(N'AdventureWorks2012'), 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