다음을 통해 공유


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

적용 대상: SQL Server

SQL Server 2019(15.x)부터 이 구성 설정은 가속 데이터베이스 복구에 필요합니다.

ADR(가속 데이터베이스 복구)은 복구 목적으로 데이터의 여러 버전을 유지 관리합니다. 이들 버전은 다양한 DML(데이터 조작 언어) 작업의 일부로 생성됩니다. 버전은 PVS(영구 버전 저장소)라는 내부 테이블에 저장됩니다.

설명

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

백그라운드 스레드가 미리 할당하는 페이지 수는 워크로드에 대한 다양한 경험적 접근을 기반으로 하지만, 주로 512개 페이지의 청크로 페이지를 할당합니다. ADR 미리 할당 인수는 청크의 배수입니다. 기본적으로 요소는 4이며, 이는 필요한 경우 한 번에 2,048개 페이지를 미리 할당한다는 의미입니다.

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

주의

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