RSS 마이크로소프트 팀스 블로그 기사

Geo‑Replication Redo Lag in Azure SQL Database

Azure SQL Database는 복원력을 위해 지리적 복제를 제공하지만, 특히 높은 쓰기 부하에서는 주 데이터베이스와 보조 데이터베이스 간에 지연이 발생할 수 있습니다. 이 기사에서는 공개 동적 관리 뷰(DMV)와 T-SQL을 사용하여 이러한 지연을 모니터링하고 문제 해결하는 방법을 설명합니다. 재실행 지연은 흔한 원인으로, 보조 데이터베이스가 트랜잭션 로그를 수신하지만 이를 데이터 페이지에 적용하는 데 시간이 걸리는 경우 발생합니다. DMV `sys.dm_geo_replication_link_status`는 복제 상태 및 지연 시간(초)과 같은 정보를 제공합니다. 정상적인 복제는 지연 시간이 0초로 표시되지만, 일시적인 지연은 일시적이며 자체적으로 해결되는 반면, 지속적인 지연은 조사가 필요합니다. 보조 데이터베이스에서 재실행 활동을 평가하기 위해 `sys.dm_database_replica_states`가 사용되며, `redo_queue_size` 및 `redo_rate`를 표시합니다. `redo_queue_size`가 0이면 정상적인 작동을 나타내고, 큐가 증가하면 보류 중인 작업이 있음을 나타냅니다. 지리적 보조 데이터베이스에서 보고 워크로드는 즉각적인 업데이트가 보장되지 않으며, 거의 실시간 데이터를 예상해야 합니다. 대량 배치 업데이트, 인덱스 유지 관리 및 버스티 쓰기 워크로드는 재실행 지연을 유발하는 일반적인 요인입니다. 최상의 방법으로는 상관 관계를 위해 UTC 타임스탬프 사용, 지연 시간과 재실행 큐 크기를 함께 모니터링, 애플리케이션에서 재시도 로직 구현 등이 있습니다. 완벽한 동기화를 가정하지 않고, 짧은 시간 동안 발생하는 재실행 급증 시 수동 개입을 삼가는 것이 중요합니다. 재실행 지연은 Azure SQL Database 지리적 복제의 정상적인 자체 복구 동작이며, DMV를 이해하면 복제본의 최신 상태를 모니터링하고 정보에 입각한 라우팅 결정을 내리는 데 도움이 됩니다. Azure SQL Database는 재실행 압력이 감소하면 자동으로 복제를 안정화합니다.
favicon
techcommunity.microsoft.com
Geo‑Replication Redo Lag in Azure SQL Database
Create attached notes ...