Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Banco de Dados SQL do
AzureInstância
Gerenciada de SQL do AzureBanco de dados SQL no Microsoft Fabric
Contém uma linha para cada unidade de alocação no banco de dados.
| Nome da coluna | Tipo de dados | Description |
|---|---|---|
| allocation_unit_id | bigint | ID da unidade de alocação. É exclusivo em um banco de dados. |
| tipo | tinyint | Tipo de unidade de alocação: 0 = Descartado 1 = Dados em linha (todos os tipos de dados, exceto LOB) 2 = Dados de objeto grande (LOB) (texto, ntext, imagem, xml, tipos de valor grande e tipos CLR definidos pelo usuário) 3 = Dados do estouro de linha |
| type_desc | nvarchar(60) | Descrição do tipo de unidade de alocação: DROPPED IN_ROW_DATA LOB_DATA ROW_OVERFLOW_DATA |
| container_id | bigint | ID do contêiner de armazenamento associado à unidade de alocação. Se type = 1 ou 3 em um índice rowstore container_id = sys.partitions.hobt_id. Se type = 1 ou 3 em um índice columnstore, container_id = sys.column_store_row_groups.delta_store_hobt_id. Se type for 2, container_id = sys.partitions.partition_id. 0 = Unidade de alocação marcada para descarte diferido |
| data_space_id | int | ID do grupo de arquivos no qual reside a unidade de alocação. |
| total_pages | bigint | Número total de páginas alocadas ou reservadas pela unidade de alocação. |
| used_pages | bigint | Número total de páginas realmente em uso. |
| data_pages | bigint | Número de páginas usadas que têm: Dados em linha Dados LOB Dados de overflow de linha Observe que o valor retornado exclui páginas de índice internas e páginas de gerenciamento de alocação. |
Note
Quando você descarta ou recria índices grandes, descarta tabelas grandes ou trunca tabelas ou partições grandes, o Mecanismo de Banco de Dados adia as desalocações de página reais e seus bloqueios associados até que a transação seja confirmada. Operações de cancelamento adiadas não libertam espaço alocado imediatamente. Portanto os valores retornados por sys.allocation_units imediatamente após o descarte ou truncamento de um objeto grande podem não refletir o espaço em disco realmente disponível.
Quando a Recuperação Acelerada de Banco de Dados está habilitada, a queda adiada é usada independentemente do tamanho do objeto.
Permissions
Requer associação à função pública . Para obter mais informações, consulte Metadata Visibility Configuration.
Examples
Determinar o espaço usado por objeto e tipo de uma unidade de alocação
A consulta a seguir retorna todas as tabelas de usuário em um banco de dados e a quantidade de espaço usada em cada uma, por tipo de unidade de alocação.
SELECT t.object_id AS ObjectID,
OBJECT_NAME(t.object_id) AS ObjectName,
SUM(u.total_pages) * 8 AS Total_Reserved_kb,
SUM(u.used_pages) * 8 AS Used_Space_kb,
u.type_desc AS TypeDesc,
MAX(p.rows) AS RowsCount
FROM sys.allocation_units AS u
JOIN sys.partitions AS p ON u.container_id = p.hobt_id
JOIN sys.tables AS t ON p.object_id = t.object_id
GROUP BY t.object_id,
OBJECT_NAME(t.object_id),
u.type_desc
ORDER BY Used_Space_kb DESC,
ObjectName;
Consulte Também
sys.partitions (Transact-SQL)
Exibições do catálogo de objeto (Transact-SQL)
Exibições do Catálogo (Transact-SQL)