기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
이 섹션에서는 지속적 복제 단계(CDC) 동안 AWS DMS 태스크 지연 시간이 발생하는 일반적인 원인에 대한 개요를 제공합니다. AWS DMS는 데이터를 비동기식으로 복제합니다. 지연 시간은 변경 사항이 소스에서 커밋된 시간과 변경 사항이 대상에 복제된 시간 사이에 지연이 발생하는 것입니다. 다음과 같은 복제 구성 요소의 잘못된 구성으로 인해 지연 시간이 발생할 수 있습니다.
소스 엔드포인트 또는 데이터 소스
대상 엔드포인트 또는 데이터 소스
복제 인스턴스
이러한 구성 요소 간의 네트워크
테스트 마이그레이션을 개념 증명으로 사용하여 복제에 대한 정보를 수집하는 것이 좋습니다. 그런 다음, 이 정보를 사용해 복제 구성을 튜닝하여 지연 시간을 최소화할 수 있습니다. 개념 증명 마이그레이션 실행에 대한 자세한 내용은 개념 증명 실행 섹션을 참조하세요.
CDC 지연 시간 유형
이 섹션에는 CDC 중에 발생할 수 있는 복제 지연 시간 유형이 나와 있습니다.
소스 지연 시간
소스 엔드포인트에서 캡처한 마지막 이벤트의 커밋 시간과 복제 인스턴스의 현재 시스템 타임스탬프 간의 지연 시간(초)입니다. CDCLatencySource
CloudWatch 지표를 사용하여 데이터 소스와 복제 인스턴스 간의 지연 시간을 모니터링할 수 있습니다. CDCLatencySource
지표가 높으면 소스에서 변경 사항을 캡처하는 프로세스가 지연되었음을 나타냅니다. 예를 들어, 애플리케이션이 10:00에 소스에 삽입을 커밋하고, AWS DMS가 10:02에 변경 사항을 사용할 경우 CDCLatencySource
지표는 120초입니다.
AWS DMS의 CloudWatch 지표에 대한 자세한 내용은 복제 작업 지표 섹션을 참조하세요.
대상 지연 시간
대상에 커밋되기를 대기하는 첫 이벤트의 소스에 대한 커밋 시간과 DMS 복제 인스턴스의 현재 타임스탬프 사이의 지연 시간(초)입니다. CDCLatencyTarget
CloudWatch 지표를 사용하여 데이터 소스와 대상 데이터에 대한 커밋 사이의 지연 시간을 모니터링할 수 있습니다. 즉, 소스에서 데이터를 읽는 데 걸리는 모든 지연도 CDCLatencyTarget
에 포함됩니다. 따라서 CDCLatencyTarget
은 항상 CDCLatencySource
보다 크거나 같습니다.
예를 들어, 애플리케이션이 10:00에 소스에 삽입을 커밋하고, AWS DMS가 10:02에 변경 사항을 사용한 후 10:05에 이러한 변경 사항을 대상에 쓸 경우 CDCLatencyTarget
지표는 300초입니다.
CDC 지연 시간이 발생하는 일반적인 원인
이 섹션에는 CDC 중에 복제 작업 시 발생할 수 있는 지연 시간 유형이 나와 있습니다.
엔드포인트 리소스
복제 성능 및 지연 시간에 큰 영향을 미치는 요인은 다음과 같습니다.
소스 및 대상 데이터베이스 구성
인스턴스 크기
과소 프로비저닝되었거나 잘못 구성된 소스 또는 대상 데이터 스토어
AWS 호스팅 소스 및 대상의 엔드포인트 문제로 인한 지연 시간 원인을 파악하려면 다음과 같은 CloudWatch 지표를 모니터링하세요.
FreeMemory
CPUUtilization
처리량 및 I/O 지표(예:
WriteIOPS
,WriteThroughput
또는ReadLatency
)트랜잭션 볼륨 지표(예
CDCIncomingChanges
:)
CloudWatch 지표 모니터링에 대한 자세한 내용은 AWS Database Migration Service 지표 섹션을 참조하세요.
복제 인스턴스 리소스
복제 인스턴스 리소스는 복제에 매우 중요합니다. 이러한 리소스로 인해 소스 및 대상 지연 시간이 모두 발생할 수 있으므로, 리소스 병목 현상이 없는지 확인해야 합니다.
복제 인스턴스에 리소스 병목 현상이 있는지 알아보려면 다음 사항을 확인합니다.
CPU, 메모리, 초당 I/O, 스토리지와 같은 중요한 CloudWatch 지표에 급격한 증가나 지속적으로 높은 값이 발생하지 않습니다.
복제 인스턴스의 크기가 워크로드에 알맞게 적정합니다. 복제 인스턴스의 알맞은 크기 결정에 대한 자세한 내용은 복제 인스턴스에 가장 적합한 크기 선택 섹션을 참조하세요.
네트워크 속도 및 대역폭
네트워크 대역폭은 데이터 전송에 영향을 미치는 요인입니다. 복제의 네트워크 성능을 분석하려면 다음 작업 중 하나를 수행하세요.
인스턴스 수준에서
ReadThroughput
및WriteThroughput
지표를 확인합니다. CloudWatch 지표 모니터링에 대한 자세한 내용은 AWS Database Migration Service 지표 섹션을 참조하세요.AWS DMS 진단 지원 AMI를 사용합니다. 현재 리전에서 진단 지원 AMI를 사용할 수 없는 경우, 지원되는 임의의 지역에서 이를 다운로드한 후 해당 리전에 복사하여 네트워크 분석을 수행할 수 있습니다. 진단 지원 AMI에 대한 자세한 내용은 AWS DMS 진단 지원 AMI 작업 섹션을 참조하세요.
AWS DMS의 CDC는 단일 스레드 방식이므로 데이터 일관성을 보장합니다. 따라서 단일 스레드 데이터 전송 속도를 계산하여 네트워크에서 지원 가능한 데이터 볼륨을 결정할 수 있습니다. 예를 들어, 100Mbps(초당 메가비트) 네트워크를 사용하여 태스크를 소스에 연결할 경우 복제에 할당되는 이론상의 최대 대역폭은 12.5Mbps(초당 메가바이트)입니다. 이는 시간당 45기가비트입니다. 소스의 트랜잭션 로그 생성 속도가 시간당 45기가비트보다 크면 태스크에 CDC 지연 시간이 발생했다는 것을 의미합니다. 100Mbps 네트워크의 경우 이러한 속도는 이론상 최대값입니다. 소스 및 대상의 네트워크 트래픽과 리소스 오버헤드 같은 다른 요인으로 인해 실제 사용 가능한 대역폭이 감소합니다.
DMS 구성
이 섹션에는 지연 시간을 줄이는 데 도움이 되는 권장 복제 구성이 나와 있습니다.
엔드포인트 설정: 소스 및 대상 엔드포인트 설정으로 인해 복제 인스턴스의 성능이 저하될 수 있습니다. 리소스를 많이 사용하는 기능을 활성화하는 엔드포인트 설정은 성능에 영향을 미칩니다. 예를 들어, Oracle 엔드포인트의 경우 LogMiner를 비활성화하고 Binary Reader를 사용하면 LogMiner가 리소스를 많이 사용하므로 성능이 향상됩니다. 다음과 같은 엔드포인트 설정은 Oracle 엔드포인트의 성능을 향상합니다.
useLogminerReader=N;useBfile=Y
엔드포인트 설정에 대한 자세한 내용은 AWS DMS 엔드포인트 작업 주제의 소스 및 대상 엔드포인트 엔진에 대한 설명서를 참조하세요.
태스크 설정: 특정 복제 시나리오의 일부 태스크 설정으로 인해 복제 인스턴스의 성능이 저하될 수 있습니다. 예를 들어, AWS DMS는 Amazon Redshift를 제외한 모든 엔드포인트의 경우 CDC에 기본적으로 트랜잭션 적용 모드(
BatchApplyEnabled=false
)를 사용합니다. 하지만 변경 횟수가 많은 소스의 경우BatchApplyEnabled
를true
로 설정하면 성능이 향상될 수 있습니다.작업 설정에 관한 자세한 내용은 AWS 데이터베이스 마이그레이션 서비스 작업에 대한 작업 설정 지정 섹션을 참조하십시오.
CDC 전용 태스크의 시작 위치: 과거의 위치 또는 타임스탬프에서 CDC 전용 태스크를 시작하면 CDC 소스 지연 시간이 증가한 상태에서 작업이 시작됩니다. 소스의 변경 사항 볼륨에 따라 태스크 지연 시간이 감소하는 데 시간이 걸릴 수 있습니다.
LOB 설정: 대용량 객체 데이터 유형은 AWS DMS가 대용량 바이너리 데이터를 복제하는 방식으로 인해 복제 성능에 지장을 줄 수 있습니다. 자세한 정보는 다음 주제를 참조하세요.
복제 시나리오
이 섹션에서는 특정 복제 시나리오를 살펴보고 이러한 시나리오가 지연 시간에 어떤 영향을 미칠 수 있는지 설명합니다.
장기간 태스크 중지
태스크를 중지하면 AWS DMS는 소스에서 읽은 마지막 트랜잭션 로그의 위치를 저장합니다. 작업을 재개하면 DMS는 동일한 트랜잭션 로그 위치에서 읽기 작업을 계속 수행하려고 합니다. 몇 시간 또는 며칠 후에 작업을 재개하면 DMS가 트랜잭션 백로그 사용을 마칠 때까지 CDC 소스 지연 시간이 증가합니다.
캐시된 변경 사항
캐시된 변경 사항은 AWS DMS가 전체 로드 복제 단계를 실행하는 동안 애플리케이션이 데이터 소스에 작성하는 변경 사항입니다. DMS는 전체 로드 단계가 완료되고 CDC 단계가 시작될 때까지 이러한 변경 사항을 적용하지 않습니다. 트랜잭션 수가 많은 소스의 경우, 캐시된 변경 사항을 적용하는 데 시간이 오래 걸리므로 CDC 단계가 시작되면 소스 지연 시간이 증가합니다. 캐시된 변경 사항 수를 최소화하려면 트랜잭션 볼륨이 적을 때 전체 로드 단계를 실행하는 것이 좋습니다.
교차 리전 복제
DMS 엔드포인트 또는 복제 인스턴스를 다른 AWS 리전에 배치하면 네트워크 지연 시간이 증가합니다. 이 경우 복제 지연 시간도 증가합니다. 최상의 성능을 얻으려면 소스 엔드포인트, 대상 엔드포인트, 복제 인스턴스를 동일한 AWS 리전에 배치하세요.