제어 테이블 작업 설정 - AWS Database Migration Service

제어 테이블 작업 설정

제어 테이블에서는 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

다음 값 중 하나입니다.

  • FULL LOAD

  • CHANGE PROCESSING(CDC)

  • NOT RUNNING

전체 로드에 최소 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

다음 값 중 하나입니다.

  • FULL LOAD

  • CHANGE PROCESSING(CDC)

작업이 전체 로드와 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