제어 테이블 작업 설정
제어 테이블에서는 AWS DMS 작업에 관한 정보를 제공합니다. 또한 현재 마이그레이션 작업과 향후 작업 모두를 계획하고 관리하는 데 사용할 수 있는 유용한 통계가 나와 있습니다. 이러한 작업 설정은 JSON 파일에 적용하거나 AWS DMS 콘솔의 작업 생성 페이지에서 고급 설정을 선택하여 적용할 수 있습니다. 예외 적용 테이블(dmslogs.awsdms_apply_exceptions)은 데이터베이스 대상에 항상 생성됩니다. 작업 구성 파일을 사용하여 작업 설정을 지정하는 방법에 관한 자세한 내용은 작업 설정 예제을 참조하세요.
AWS DMS는 전체 로드 + CDC 또는 CDC 전용 태스크 중에만 제어 테이블을 생성하고 전체 로드 전용 태스크 중에는 생성하지 않습니다.
전체 로드 및 CDC(기존 데이터 마이그레이션 및 진행 중인 변경 사항 복제) 및 CDC 전용(데이터 변경 사항만 복제) 작업의 경우, 다음을 비롯한 추가 테이블을 만들 수도 있습니다.
-
복제 상태(dmslogs.awsdms_status) – 이 테이블은 현재 작업에 대한 세부 정보를 제공합니다. 작업 상태, 작업에서 사용하는 메모리 크기, 대상에 아직 적용되지 않은 변경 수 등이 표시됩니다. 이 테이블에는 AWS DMS가 현재 읽는 소스 데이터베이스의 위치도 표시됩니다. 또한 이것은 작업이 전체 로드 단계이거나 변경 데이터 캡처(CDC)인지 여부를 나타냅니다.
-
일시 중지된 테이블(dmslogs.awsdms_suspended_tables) – 이 테이블에는 일시 중지된 테이블뿐 아니라 일시 중지된 이유가 나와 있습니다.
-
복제 기록(dmslogs.awsdms_history) – 이 테이블은 복제 기록에 관한 정보를 제공합니다. 작업 중에 처리된 레코드의 수와 볼륨, CDC 작업 종료 시 지연 시간, 기타 통계 등이 표시됩니다.
예외 적용 테이블(dmslogs.awsdms_apply_exceptions)에는 다음 파라미터가 포함되어 있습니다.
| 열 | 유형 | 설명 |
|---|---|---|
|
TASK_NAME |
nvchar |
AWS DMS 작업의 리소스 ID입니다. 리소스 ID는 태스크 ARN에서 찾을 수 있습니다. |
|
TABLE_OWNER |
nvchar |
테이블 소유자입니다. |
|
TABLE_NAME |
nvchar |
테이블 이름. |
|
ERROR_TIME |
타임스탬프 |
예외(오류)가 발생한 시간입니다. |
|
STATEMENT |
nvchar |
오류가 발생했을 때 실행되고 있었던 문입니다. |
|
ERROR |
nvchar |
오류 이름 및 설명입니다. |
복제 상태 테이블(dmslogs.awsdms_status)에는 작업과 대상 데이터베이스의 현재 상태가 포함되어 있습니다. 설정은 다음과 같습니다.
| 열 | 유형 | 설명 |
|---|---|---|
|
SERVER_NAME |
nvchar |
복제 작업이 실행되고 있는 시스템의 이름입니다. |
|
TASK_NAME |
nvchar |
AWS DMS 작업의 리소스 ID입니다. 리소스 ID는 태스크 ARN에서 찾을 수 있습니다. |
|
TASK_STATUS |
varchar |
다음 값 중 하나입니다.
전체 로드에 최소 1개 이상의 테이블이 있는 한 작업 상태가 FULL LOAD로 설정됩니다. 모든 테이블이 로드된 후 CDC가 활성화되어 있으면 작업 상태가 CHANGE PROCESSING으로 바뀝니다. 태스크를 시작하기 전에 또는 태스크가 완료된 후에 태스크가 NOT RUNNING으로 설정됩니다. |
| STATUS_TIME |
타임스탬프 |
작업 상태의 타임스탬프. |
|
PENDING_CHANGES |
int |
소스 데이터베이스에서 커밋되고 복제 인스턴스의 메모리와 디스크에 캐시된 변경 레코드의 수입니다. |
|
DISK_SWAP_SIZE |
int |
이전 또는 오프로드된 트랜잭션에서 사용하는 디스크 공간 크기입니다. |
| TASK_MEMORY |
int |
사용된 현재 메모리(단위: MB). |
|
SOURCE_CURRENT _POSITION |
varchar |
AWS DMS가 현재 읽는 소스 데이터베이스의 위치입니다. |
|
SOURCE_CURRENT _TIMESTAMP |
타임스탬프 |
AWS DMS가 현재 읽는 소스 데이터베이스의 타임스탬프입니다. |
|
SOURCE_TAIL _POSITION |
varchar |
커밋되지 않은 가장 오래된 시작 트랜잭션의 위치입니다. 이 값은 변경 사항을 잃지 않고도 되돌릴 수 있는 가장 최근 위치입니다. |
|
SOURCE_TAIL _TIMESTAMP |
타임스탬프 |
커밋되지 않은 가장 오래된 시작 트랜잭션의 타임스탬프입니다. 이 값은 변경 사항을 잃지 않고도 되돌릴 수 있는 가장 최근 타임스탬프입니다. |
|
SOURCE_TIMESTAMP _APPLIED |
타임스탬프 |
마지막 트랜잭션의 타임스탬프가 커밋됩니다. 대량 적용 프로세스에서 이 값은 대량으로 마지막 트랙잭션을 커밋하기 위한 타임스탬프입니다. |
일시 중단된 테이블(dmslogs.awsdms_suspended_tables)에는 다음과 같은 파라미터가 포함되어 있습니다.
| 열 | 유형 | 설명 |
|---|---|---|
|
SERVER_NAME |
nvchar |
복제 작업이 실행되고 있는 시스템의 이름입니다. |
|
TASK_NAME |
nvchar |
AWS DMS 작업의 이름입니다. |
|
TABLE_OWNER |
nvchar |
테이블 소유자입니다. |
|
TABLE_NAME |
nvchar |
테이블 이름. |
|
SUSPEND_REASON |
nvchar |
일시 중지 사유. |
|
SUSPEND_TIMESTAMP |
타임스탬프 |
일시 중단이 발생한 시간입니다. |
복제 기록 테이블(dmslogs.awsdms_history)에는 다음 파라미터가 포함되어 있습니다.
| 열 | 유형 | 설명 |
|---|---|---|
|
SERVER_NAME |
nvchar |
복제 작업이 실행되고 있는 시스템의 이름입니다. |
|
TASK_NAME |
nvchar |
AWS DMS 작업의 리소스 ID입니다. 리소스 ID는 태스크 ARN에서 찾을 수 있습니다. |
|
TIMESLOT_TYPE |
varchar |
다음 값 중 하나입니다.
작업이 전체 로드와 CDC를 실행하고 있는 경우, 두 이력 레코드는 타임 슬롯에 작성됩니다. |
| TIMESLOT |
타임스탬프 |
시간 슬롯의 종료 타임스탬프입니다. |
|
TIMESLOT_DURATION |
int |
시간 슬롯의 지속 시간(분)입니다. |
|
TIMESLOT_LATENCY |
int |
시간 슬롯이 끝날 때의 대상 지연 시간(초)입니다. 이 값은 CDC 시간 슬롯에만 적용됩니다. |
| RECORDS |
int |
시간 슬롯 중에 처리되는 레코드의 수입니다. |
|
TIMESLOT_VOLUME |
int |
처리되는 데이터의 볼륨(단위: MB)입니다. |
검증 실패 테이블(awsdms_validation_failures_v1)에는 작업에 대한 모든 데이터 검증 실패가 포함되어 있습니다. 자세한 내용은 데이터 검증 문제 해결을 참조하세요.
추가 제어 테이블 설정에는 다음이 포함됩니다.
-
HistoryTimeslotInMinutes– 이 옵션을 사용하여 복제 이력 테이블에서 각 시간 슬롯의 길이를 나타냅니다. 기본값은 5분입니다. -
ControlSchema– 이 옵션을 사용하여 AWS DMS 대상 제어 테이블의 데이터베이스 스키마 이름을 지정합니다. 이 옵션에 대한 정보를 입력하지 않으면 테이블이 다음과 같이 데이터베이스의 기본 위치로 복사됩니다.-
PostgreSQL, 퍼블릭
-
Oracle, 대상 스키마
-
Microsoft SQL 서버, 대상 데이터베이스에 dbo
-
MySQL, awsdms_control
-
MariaDB, awsdms_control
-
Amazon Redshift, 퍼블릭
-
DynamoDB, 데이터베이스에 개별 테이블로 생성됨
-
IBM DB2 LUW, awsdms_control
-