Compartilhar via


configuração do servidor: Fator de Pré-alocação da ADR

Aplica-se: SQL Server

A partir do SQL Server 2019 (15.x), essa configuração é necessária para a recuperação acelerada de banco de dados.

A ADR (Recuperação Acelerada de Banco de Dados) mantém versões dos dados para fins de recuperação. Essas versões são geradas como parte de várias operações de DML (linguagem de manipulação de dados). As versões são armazenadas em uma tabela interna chamada PVS (armazenamento de versão persistente).

Comentários

O desempenho poderá diminuir se as páginas forem alocadas para o PVS como parte das operações de DML em primeiro plano do usuário. O thread em segundo plano pré-aloca as páginas e as mantém prontamente disponíveis para transações de DML. O desempenho é melhor quando o thread em segundo plano pré-aloca um número suficiente de páginas e o percentual de alocações de PVS em primeiro plano é próximo de 0. O log de erros conterá inteiros com a marca PreallocatePVS se o percentual ficar alto e estiver afetando o desempenho.

O número de páginas pré-alocadas pelo thread em segundo plano baseia-se em várias heurísticas de carga de trabalho, mas aloca páginas, em grande medida, em partes de 512 páginas. O fator de pré-alocação da ADR é um múltiplo dessa parte. Por padrão, o fator é 4, o que significa que ele pré-aloca 2048 páginas ao mesmo tempo quando necessário.

Embora o thread em segundo plano leve os padrões de carga de trabalho em consideração, esse fator pode ser aumentado, se necessário, para aprimorar o desempenho.

Cuidado

Se a pré-alocação do PVS for aumentada em demasia, ela disputará com outras alocações no sistema e poderá, na realidade, reduzir o desempenho geral. Antes de modificar essa configuração, teste o desempenho geral do sistema.

Problema conhecido

Para o SQL Server 2019 (15.x) CU 12 e versões anteriores, esse valor pode estar definido como 0. Recomendamos que você redefina o valor para 4, que é o padrão projetado, usando o exemplo neste artigo.

Exemplos

O exemplo a seguir define o fator de pré-alocação como 4.

EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
EXEC sp_configure 'ADR Preallocation Factor', 4;
RECONFIGURE;
GO