Delen via


Serverconfiguratie: ADR Preallocation-factor

van toepassing op:SQL Server-

Vanaf SQL Server 2019 (15.x) wordt deze configuratie-instelling gebruikt door versneld databaseherstel.

Versneld databaseherstel (ADR) maakt gebruik van rijversies voor transactiebeheer en databaseherstel. Deze versies worden gegenereerd als onderdeel van verschillende DML-bewerkingen (Data Manipulat Language). Versies worden opgeslagen in een interne tabel met de naam permanent versiearchief (PVS).

Opmerkingen

Prestaties kunnen afnemen als pagina's worden toegewezen voor permanente versieopslag (PVS) als onderdeel van DML-bewerkingen voor voorgrondgebruikers. Een achtergrondthread maakt pagina's vooraf toegewezen en houdt deze direct beschikbaar voor DML-transacties. Prestaties zijn optimaal wanneer de achtergrondthread voldoende pagina's prealloceert, zodat het percentage van PVS-toewijzingen op de voorgrond bijna 0 is. Het foutenlogboek bevat vermeldingen met de tag PreallocatePVS als het percentage hoog genoeg wordt om de prestaties te beïnvloeden.

Het aantal pagina's dat de achtergrondthread vooraf reserveert, is gebaseerd op verschillende heuristieken voor werkbelasting. Normaal gesproken wijst de achtergrondthread segmenten van 512 pagina's toe. De ADR-preallocatiefactor is een veelvoud van de chunk. De factor is standaard 4, wat betekent dat 2048 pagina's in één keer worden toegewezen wanneer dat nodig is.

Hoewel bij de achtergrondthread rekening wordt gehouden met workloadpatronen, kan deze factor indien nodig worden verhoogd om de prestaties te verbeteren.

Voorzichtigheid

Als de PVS-preallocatiefactor te veel wordt verhoogd, kan het conflicten veroorzaken met andere toewijzingen in het systeem en de algehele prestaties verminderen. Voordat u deze instelling wijzigt, moet u een basislijn van de systeemprestaties verkrijgen voor tracerings- en vergelijkingsdoeleinden.

Bekend probleem

Voor SQL Server 2019 (15.x) CU 12 en eerdere versies is deze waarde mogelijk ingesteld op 0. U wordt aangeraden de waarde opnieuw in te stellen op 4, wat de standaardinstelling is, met behulp van het voorbeeld in dit artikel.

Voorbeelden

In het volgende voorbeeld wordt de prelocatiefactor ingesteld op 4.

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