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.

Confira também