다음을 통해 공유


서버 구성: ADR 사전 할당 계수

적용 대상:SQL Server

SQL Server 2019(15.x)부터 이 구성 설정은 가속 데이터베이스 복구사용됩니다.

ADR(가속 데이터베이스 복구)은 트랜잭션 관리 및 데이터베이스 복구를 위해 행 버전을 사용합니다. 이들 버전은 다양한 DML(데이터 조작 언어) 작업의 일부로 생성됩니다. 버전은 PVS(영구 버전 저장소)라는 내부 테이블에 저장됩니다.

설명

페이지가 포그라운드 사용자 DML 작업의 일부로 PVS(영구 버전 저장소)에 할당되는 경우 성능이 저하될 수 있습니다. 백그라운드 스레드에서 페이지를 미리 할당하고 DML 트랜잭션에 쉽게 사용할 수 있도록 유지합니다. 백그라운드 스레드가 포그라운드 PVS 할당 비율이 0에 가까운 충분한 페이지를 미리 할당할 때 성능이 최적입니다. 오류 로그에는 성능에 영향을 줄 만큼 백분율이 높아지면 PreallocatePVS 태그가 있는 항목이 포함됩니다.

백그라운드 스레드가 미리 할당하는 페이지 수는 다양한 워크로드 추론을 기반으로 합니다. 일반적으로 백그라운드 스레드는 512페이지의 청크를 할당합니다. ADR 미리 할당 인수는 청크의 배수입니다. 기본적으로 4가 요소이며, 이는 필요 시 2048 페이지가 한 번에 미리 할당된다는 것을 의미합니다.

백그라운드 스레드는 워크로드 패턴을 고려하지만, 필요한 경우 성능을 개선하기 위해 이 인수를 증가시킬 수 있습니다.

주의

PVS 사전 할당 인자가 너무 많이 증가하면 시스템의 다른 할당과 경합할 수 있으며 실제로 전체 성능을 줄일 수 있습니다. 이 설정을 수정하기 전에 추적 및 비교를 위해 시스템 성능의 기준을 가져옵니다.

알려진 문제

SQL Server 2019(15.x) CU 12 및 이전 버전의 경우, 이 값을 0으로 설정할 수 있습니다. 이 문서의 예를 사용하여 설계된 기본값인 값 4로 초기화하는 것이 좋습니다.

예시

다음 예에서는 미리 할당 요소를 4로 설정합니다.

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