기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
변경 처리 튜닝 설정
다음 설정은 변경 데이터 캡처 (CDC) 중에 대상 테이블의 변경 사항을 AWS DMS 처리하는 방법을 결정합니다. 이 설정 중 몇 개는 대상 메타데이터 파라미터 BatchApplyEnabled
의 값에 따라 달라집니다. BatchApplyEnabled
파라미터에 관한 자세한 내용은 대상 메타데이터 작업 설정를 참조하십시오. 작업 구성 파일을 사용하여 작업 설정을 지정하는 방법에 관한 자세한 내용은 작업 설정 예제을 참조하십시오.
변경 처리 튜닝 설정에는 다음이 포함됩니다.
다음 설정은 대상 메타데이터 파라미터 BatchApplyEnabled
가 true
로 설정되어 있는 경우에만 적용됩니다.
-
BatchApplyPreserveTransaction
–true
로 설정하면 트랜잭션 무결성이 유지되고 배치에서는 원본의 트랜잭션 내에 있는 모든 변경 사항이 포함됩니다. 기본값은true
입니다. 이 설정은 Oracle 대상 엔드포인트에만 적용됩니다.false
로 설정되면 트랜잭션 무결성이 일시적인 시간 경과가 있어 성능이 개선될 수 있습니다. 원본 트랜잭션의 모든 변경 사항이 단일한 배치(batch)의 대상에 적용된다는 보장은 없습니다.기본적으로 트랜잭션 모드에서 변경을 AWS DMS 처리하므로 트랜잭션 무결성이 유지됩니다. 트랜잭션 무결성이 일시적으로 저하될 여지가 있다면 배치 최적화 적용 옵션을 대신 사용할 수 있습니다. 이 옵션은 효율성을 위해 트랜잭션을 효율적으로 그룹화하고 일괄적으로 적용합니다. 배치 최적화 적용 옵션을 사용하면 거의 항상 참조 무결성 제약 조건을 위반합니다. 따라서 마이그레이션 프로세스 중에 이러한 제약 조건을 해제한 다음, 전환 프로세스의 일부로 다시 설정하는 것이 좋습니다.
-
BatchApplyTimeoutMin
— 각 일괄 변경 적용 사이에 AWS DMS 대기하는 최소 시간 (초) 을 설정합니다. 기본값은 1입니다. -
BatchApplyTimeoutMax
— 각 일괄 변경 적용 사이에 시간이 초과되기 전에 AWS DMS 대기하는 최대 시간 (초) 을 설정합니다. 기본값은 30입니다. -
BatchApplyMemoryLimit
– 배치 최적화 적용 모드에서 사전 처리를 위해 사용하는 최대 메모리 양(MB)을 설정합니다. 기본값은 500입니다. -
BatchSplitSize
– 단일 배치에서 적용되는 변경 사항의 최대 수를 설정합니다. 기본값이 0이면 적용되는 제한이 없음을 뜻합니다.
다음 설정은 대상 메타데이터 파라미터 BatchApplyEnabled
가 false
로 설정되어 있는 경우에만 적용됩니다.
-
MinTransactionSize
– 각 트랜잭션에 포함할 변경 사항의 최소 수를 설정합니다. 기본값은 1000입니다. -
CommitTimeout
— 제한 시간을 선언하기 전에 트랜잭션을 일괄적으로 수집하는 최대 시간을 초 단위로 설정합니다. AWS DMS 기본값은 1입니다.
양방향 복제의 경우, 다음 설정은 대상 메타데이터 파라미터 BatchApplyEnabled
가 false
로 설정되어 있는 경우에만 적용됩니다.
-
LoopbackPreventionSettings
– 이러한 설정은 양방향 복제와 관련된 작업 쌍으로 된 지속적 복제 작업마다 루프백 방지를 제공합니다. 루프백 방지는 동일한 변경 사항이 양방향 복제의 두 방향 모두에 적용되어 데이터가 손상되는 문제를 방지합니다. 양방향 복제에 관한 자세한 내용은 양방향 복제 수행 단원을 참조하십시오.
AWS DMS 트랜잭션이 소스, 타겟 또는 둘 다에 완전히 커밋될 때까지 트랜잭션 데이터를 메모리에 보관하려고 시도합니다. 그렇지만 할당된 메모리보다 크거나 지정된 시간 한도 내에서 커밋되지 않은 트랜잭션은 디스크에 기록됩니다.
다음 설정은 변경 처리 모드에 상관 없이 변경 처리 튜닝에 적용됩니다.
-
MemoryLimitTotal
– 디스크에 기록되기 전에 모든 트랜잭션이 메모리에서 점유할 수 있는 최대 크기(MB 단위)를 설정합니다. 기본값은 1,024입니다. -
MemoryKeepTime
– 디스크에 기록되기 전에 각 트랜잭션이 메모리에 유지될 수 있는 최대 시간(초)을 설정합니다. 기간은 트랜잭션 캡처를 AWS DMS 시작한 시간부터 계산됩니다. 기본값은 60입니다. -
StatementCacheSize
– 변경 사항을 대상에 적용할 때 나중에 실행할 수 있도록 서버에서 저장하는 준비된 문의 최대 수를 설정합니다. 기본값은 50입니다. 최대값은 200입니다.
다음은 변경 처리 조정을 처리하는 작업 설정이 작업 설정 JSON 파일에 나타나는 방식의 예입니다.
"ChangeProcessingTuning": { "BatchApplyPreserveTransaction": true, "BatchApplyTimeoutMin": 1, "BatchApplyTimeoutMax": 30, "BatchApplyMemoryLimit": 500, "BatchSplitSize": 0, "MinTransactionSize": 1000, "CommitTimeout": 1, "MemoryLimitTotal": 1024, "MemoryKeepTime": 60, "StatementCacheSize": 50 }
데이터 복제 작업 중에 Amazon S3 대상에 대한 쓰기 빈도를 제어하기 위해 cdcMaxBatchInterval
및 cdcMinFileSize
추가 연결 속성을 구성할 수 있습니다. 따라서 추가 오버헤드 작업 없이 데이터를 분석할 때 성능이 향상될 수 있습니다. 자세한 내용은 Amazon S3를 대상으로 사용할 때의 엔드포인트 설정 AWS DMS 단원을 참조하십시오.