sys.dm_tran_persistent_version_store_stats (Transact-SQL)
Aplica-se a: SQL Server 2019 (15.x) Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure
Retorna informações para métricas de ADR (Recuperação Acelerada de Banco de Dados) e de PVS (Repositório de Versões Persistentes).
Tabela retornada
Nome da coluna | Tipo de dados | Descrição |
---|---|---|
database_id | int | O database_id desta linha. 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. |
pvs_filegroup_id | smallint | O grupo de arquivos que hospeda o repositório de versões PVS. |
persistent_version_store_size_kb | BIGINT | Tamanho do arquivo PVS em quilobytes. Esse valor é usado para determinar o espaço atual usado pelo PVS. |
online_index_version_store_size_kb | BIGINT | O tamanho do repositório de versão especial, em kilobytes, usado durante a recompilação do índice online. |
current_aborted_transaction_count | BIGINT | O número de transações de anulação no banco de dados. Os detalhes das transações de anulação podem ser vistos em sys.dm_tran_aborted_transactions . |
oldest_active_transaction_id | BIGINT | A ID da transação ativa mais antiga. |
oldest_aborted_transaction_id | BIGINT | A ID da transação de anulação mais antiga. Se o limpador de PVS não puder remover a transação anulada, esse valor refletirá o valor mais antigo. |
min_transaction_timestamp | BIGINT | O carimbo de data/hora mínimo útil no sistema com base nas verificações de instantâneo. |
online_index_min_transaction_timestamp | BIGINT | O carimbo de data/hora mínimo útil no sistema para manter a limpeza do PVS. Corresponde a online_index_version_store_size_kb . |
secondary_low_water_mark | BIGINT | A marca-d'água baixa agregada para consultas em secundários legíveis. É um ID de transação e pode ser usado para comparar com oldest_active_transaction_id e oldest_aborted_transaction_id . |
offrow_version_cleaner_start_time | Datetime2 (7) | A hora de início do processo de limpeza do PVS fora da linha. |
offrow_version_cleaner_end_time | Datetime2 (7) | A última hora de término do processo de limpeza do PVS fora da linha. |
aborted_version_cleaner_start_time | Datetime2 (7) | O carimbo de data/hora de início de uma limpeza completa. |
aborted_version_cleaner_end_time | Datetime2 (7) | O carimbo de data/hora de término da última limpeza completa. Se a hora de início tiver valor, mas a hora de término não, significa que a limpeza do PVS está em andamento no banco de dados em questão. |
pvs_off_row_page_skipped_low_water_mark | BIGINT | O número de páginas ignoradas para recuperação devido à retenção de consultas de leitura secundárias. |
pvs_off_row_page_skipped_transaction_not_cleaned | BIGINT | O número de páginas ignoradas para recuperação devido a transações anuladas. Observe que esse valor não reflete a retenção do PVS em relação às transações anuladas, pois o limpador de versão usa um limite mínimo para a limpeza da versão da transação anulada. Isso pode ser ignorado para um grande problema do PVS. |
pvs_off_row_page_skipped_oldest_active_xdesid | BIGINT | O número de páginas ignoradas para recuperação devido à transação ativa mais antiga. |
pvs_off_row_page_skipped_min_useful_xts | BIGINT | O número de páginas ignoradas para recuperação devido a um exame de instantâneo longo. |
pvs_off_row_page_skipped_oldest_snapshot | BIGINT | O número de páginas ignoradas para recuperação devido a atividades de recompilação de índice online. Não é comum para uso do PVS. |
pvs_off_row_page_skipped_oldest_aborted_xdesid | BIGINT | Aplica-se a: SQL Server 2022 (16.x) e versões posteriores. O número de páginas ignoradas para recuperação devido às transações anuladas mais antigas. Se o limpador de versão for lento ou invalidado, isso refletirá quantas páginas devem ser mantidas para transações anuladas. |
Permissões
No SQL Server e na Instância Gerenciada de SQL, requer a permissão VIEW SERVER STATE
.
Nos objetivos de serviço Básico, S0 e S1 do Banco de Dados SQL e para bancos de dados em pools elásticos, a conta de administrador do servidor, a conta de administrador do Microsoft Entra ou a ##MS_ServerStateReader##
associação na função de servidor são necessárias. Em todos os outros objetivos de serviço do Banco de Dados SQL, a permissão VIEW DATABASE STATE
no banco de dados ou a associação à função de servidor ##MS_ServerStateReader##
são necessárias.
Permissões do SQL Server 2022 e posteriores
É necessária a permissão VIEW SERVER PERFORMANCE STATE no servidor.
Comentários
Examine as práticas recomendadas para recuperação acelerada de banco de dados. Se o PVS da ADR estiver crescendo, consulte Solucionar problemas de recuperação acelerada de banco de dados.