sys.dm_db_file_space_usage (Transact-SQL)
Retorna informações de uso do espaço de cada arquivo no banco de dados.
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
database_id |
smallint |
ID do banco de dados. |
file_id |
smallint |
ID do arquivo. file_id é mapeado para file_id em sys.dm_io_virtual_file_stats e para fileid em sys.sysfiles. |
filegroup_id |
smallint |
ID do grupo de arquivos. |
total_page_count |
bigint |
Número total de páginas no arquivo. |
allocated_extent_page_count |
bigint |
Número total de páginas nas extensões alocadas no arquivo. |
unallocated_extent_page_count |
bigint |
Número total de páginas nas extensões não alocadas no arquivo. Páginas não utilizadas em extensões alocadas não são incluídas. |
version_store_reserved_page_count |
bigint |
Número total de páginas nas extensões uniformes alocadas para o repositório de versão. As páginas do repositório de versão nunca são alocadas de eventos mistos. Páginas IAM não são incluídas, pois são sempre são alocadas de extensões mistas. As páginas PFS serão incluídas se forem alocadas de uma extensão uniforme. Para obter mais informações, consulte sys.dm_tran_version_store (Transact-SQL). |
user_object_reserved_page_count |
bigint |
Número total de páginas alocadas de extensões uniformes para objetos de usuário no banco de dados. Páginas não usadas de uma extensão alocada são incluídas na contagem. Páginas IAM não são incluídas, pois são sempre são alocadas de extensões mistas. As páginas PFS serão incluídas se forem alocadas de uma extensão uniforme. Você pode usar a coluna total_pages na exibição de catálogo sys.allocation_units para retornar a contagem de páginas reservadas de cada unidade de alocação no objeto de usuário. No entanto, observe que a coluna total_pages inclui páginas IAM. |
internal_object_reserved_page_count |
bigint |
Número total de páginas nas extensões uniformes alocadas para objetos internos no arquivo. Páginas não usadas de uma extensão alocada são incluídas na contagem. Páginas IAM não são incluídas, pois são sempre são alocadas de extensões mistas. As páginas PFS serão incluídas se forem alocadas de uma extensão uniforme. Não há exibição do catálogo ou objeto de gerenciamento dinâmico que retorne a contagem de páginas de cada objeto interno. |
mixed_extent_page_count |
bigint |
Número total de páginas alocadas e não alocadas nas extensões mistas alocadas no arquivo. As extensões mistas contêm páginas alocadas a objetos diferentes. Essa contagem inclui todas as páginas IAM no arquivo. |
Comentários
As contagens de página estão sempre no nível de extensão. Portanto, os valores de contagem de página serão sempre um múltiplo de oito. As extensões que contêm páginas de alocação GAM (Global Alocação Map) e SGAM (Shared Global Allocation Map) são extensões uniformes alocadas. Elas não são incluídas nas contagens de página previamente descritas.
O conteúdo do repositório de versão atual está em sys.dm_tran_version_store. As páginas de repositório de versão são controladas no nível de arquivo, em vez de no nível de sessão e tarefa, porque são recursos globais. Uma sessão pode gerar versões, mas as versões não podem ser removidas quando a sessão terminar. A limpeza total do repositório de versão deve considerar a transação mais longa em execução que exige acesso à versão particular. A transação mais longa em execução relacionada à limpeza do repositório de versão pode ser descoberta por meio da exibição da coluna elapsed_time_seconds em sys.dm_tran_active_snapshot_database_transactions.
Alterações frequentes na coluna mixed_extent_page_count podem indicar uso pesado de páginas SGAM. Quando isso ocorrer, você poderá ver muitas esperas de PAGELATCH_UP nas quais o recurso de espera é uma página SGAM. Para obter mais informações, consulte sys.dm_os_waiting_tasks (Transact-SQL), sys.dm_os_wait_stats (Transact-SQL) e sys.dm_os_latch_stats (Transact-SQL).
Objetos do usuário
Os objetos a seguir são incluídos nos contadores de páginas de objeto do usuário:
Tabelas e índices definidos pelo usuário
Índices e tabelas do sistema
Tabelas e índices temporários globais
Tabelas e índices temporários locais
Variáveis de tabela
Tabelas retornadas nas funções com valor de tabela
Objetos internos
Objetos internos estão apenas em tempdb. Os seguintes objetos são incluídos nos contadores de páginas de objeto de usuário:
Tabelas de trabalho para operações de cursor ou de spool e armazenamento temporário de LOB (Objeto Grande)
Arquivos de trabalho para operações, como junção de hash
Execuções de classificação
Cardinalidades da relação
De |
Para |
Relação |
---|---|---|
sys.dm_db_file_space_usage.database_id, file_id |
sys.dm_io_virtual_file_stats.database_id, file_id |
Um para um |
Permissões
Requer a permissão VIEW SERVER STATE no servidor.
Consulte também
Referência
Exibições e funções de gerenciamento dinâmico (Transact-SQL)
Exibições de gerenciamento dinâmico relacionadas a bancos de dados (Transact-SQL)