SQL Server 2025(17.x) 미리 보기
availability group commit time
서버 구성 옵션을 사용하여 Always On 가용성 그룹 복제본에 대한 그룹 커밋 시간(밀리초)을 지정합니다.
비고
availability group commit time
서버 구성 옵션은 SQL Server 2025(17.x) 미리 보기부터 사용할 수 있습니다.
개요
트랜잭션 내에서 변경한 내용은 트랜잭션이 커밋될 때까지 트랜잭션 외부에서 볼 수 없습니다. Always On 가용성 그룹에 대한 커밋된 트랜잭션의 정의에는 강화된 커밋을 승인하는 가용성 그룹의 모든 동기 보조 복제본이 포함됩니다. 주 복제본에서 커밋을 실행한 후에는 해당 사실을 네트워크를 통해 모든 보조 복제본으로 신속하게 전파해야 합니다.
SQL Server는 트랜잭션의 ACID 속성을 유지하기 위해 미리 쓰기 트랜잭션 로깅 을 사용하므로 변경 내용은 먼저 로그 블록 형식으로 트랜잭션 로그에 기록됩니다. 이러한 로그 블록은 모든 보조 복제본의 트랜잭션 로그에 전송된 후 적용됩니다.
SQL Server 2016(13.x) 이상 버전에서 성능을 향상시키고 대기 시간을 줄이기 위해 SQL Server는 Always On 가용성 그룹 로그 블록을 여러 커밋으로 채운 후 보조 복제본으로 보내기 전에 10밀리초 지연을 사용합니다.
SQL Server 2025(17.x) 미리 보기에서는 가용성 그룹 복제본에 대한 그룹 커밋 시간을 밀리초 단위로 지정하는 서버 구성 옵션을 도입 availability group commit time
했습니다. 기본값 10밀리초가 너무 긴 비즈니스 시나리오의 경우 이 옵션을 사용하면 SQL Server에서 여러 커밋을 적은 수의 로그 블록 내에서 일괄 처리로 그룹화할 수 있습니다.
커밋을 그룹화하면 데이터 복제의 효율성과 발급자에게 성공적인 커밋을 보고하는 데 걸리는 시간 사이에 절충 이 발생합니다.
- 사용 중인 시스템에서 커밋을 그룹화하면 더 많은 트랜잭션으로 채워진 로그 블록이 생성되어 네트워크 포화를 방지하고 보조 복제본에 많은 수의 작은 로그 블록을 적용하는 것과 관련된 오버헤드가 발생합니다.
- 그러나 트랜잭션이 보조 복제본에 적용되기까지 10밀리초의 지연이 있으므로 일부 비즈니스 시나리오에 문제가 될 수 있습니다.
기본값 10밀리초가 너무 긴 비즈니스 시나리오의 경우 트랜잭션이 보조 복제본으로 더 빠르게 전송되도록 서버 구성 옵션을 더 낮은 값으로 수정 availability group commit time
할 수 있습니다.
비고
기본값
0
은 SQL Server가 가용성 그룹 커밋 시간에 10ms의 기본값을 사용한다는 것을 나타냅니다.availability group commit time
서버 구성 옵션은 고급 옵션 보기가1
로 설정될 때 사용할 수 있습니다.