AWS DMS를 사용하여 대상 S3 엔드포인트에 대해 생성되는 CDC 파일 수를 제어하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2022년 12월 1일

Amazon Simple Storage Service(S3)를 대상 엔드포인트로 사용할 때 생성되는 변경 데이터 캡처(CDC) 파일 수를 제어하고 싶습니다. AWS Database Migration Service(AWS DMS)를 사용하여 이를 사용하려면 어떻게 해야 합니까?

간략한 설명

Amazon S3를 대상 엔드포인트로 사용하는 경우 여러 파라미터를 사용하여 대상 엔드포인트의 관련 파일 크기를 제어할 수 있습니다. 여기에는 Amazon S3를 전체 로드 및 CDC 또는 CDC 전용 AWS DMS 작업의 대상 엔드포인트로 사용하는 것이 포함됩니다.

이 문서에서는 다음과 같은 추가 연결 속성(ECA)에 대해 설명합니다. 또한 이를 사용하여 Amazon S3 엔드포인트에서 생성된 CDC 파일의 볼륨을 제어하는 방법도 다룹니다.

  • cdcMaxBatchInterval - Amazon S3에 파일을 출력하기 위한 최대 간격 길이 조건(초 단위로 정의). 기본값은 60초입니다.
  • cdcMinFileSize - Amazon S3에 파일을 출력하기 위한 최소 파일 크기 조건(KB 단위로 정의). 기본값은 32000KB입니다.
  • maxFileSize - 전체 로드 중에 S3 대상으로 마이그레이션하는 동안 생성되는 .csv 파일의 최대 크기(KB)입니다. 기본값은 1GB입니다.
  • WriteBufferSize - AWS DMS 복제 인스턴스의 로컬 디스크에 .csv 파일을 생성할 때 사용되는 메모리 내 파일 쓰기 버퍼의 크기(KB)입니다. 기본값은 1000KB입니다.

해결 방법

cdcMaxBatchInterval 파라미터는 Amazon S3에 파일을 쓰는 시간 간격을 제어합니다. 기본값인 60초를 사용하는 경우 AWS DMS는 1분마다 Amazon S3에 파일을 씁니다. 또 다른 중요한 파라미터는 CDC 파일의 최대 크기를 결정하는 cdcMinFileSize 파라미터입니다. 기본값인 32000KB를 사용하는 경우 AWS DMS는 32000KB의 변경 데이터가 있을 때마다 Amazon S3에 씁니다.

cdcMaxBatchInterval 및 cdcMinFileSize 파라미터는 함께 작동합니다. AWS DMS는 먼저 충족되는 파라미터 값을 사용합니다. 기본 설정에서 AWS DMS는 1분 동안 보류 중인 변경 사항 또는 32000KB의 데이터가 있는 경우 Amazon S3에 파일을 씁니다. 어떤 작업이 먼저 진행되느냐에 따라 다음 작업 중 하나가 완료됩니다.
참고: AWS DMS는 동일한 파일에 트랜잭션을 유지 관리하므로 트랜잭션이 클 경우 파일 크기가 cdcMinFileSize 및 cdcMaxBatchInterval을 초과할 수 있습니다.

maxFileSize는 CSV 및 Parquet 형식 모두에 대해 S3 대상 출력 파일의 최대 파일 크기를 결정합니다. 그러나 .parquet 파일에 쓸 때 AWS DMS는 데이터를 일괄적으로 씁니다.

1.    AWS DMS는 writeBufferSize의 기본 크기인 1024KB의 메모리 세그먼트를 할당합니다.

2.    maxFileSize 값에 관계없이 AWS DMS는 기본 크기가 1MB인 쓰기 버퍼를 하나 이상 할당합니다.

3.    AWS DMS는 데이터의 첫 번째 배치 쓰기를 마치면 현재 데이터 크기를 maxFileSize와 비교합니다. 현재 크기가 maxFileSize보다 크거나 같은 경우 데이터가 대상 S3 버킷의 .parquet 파일에 기록됩니다.

4.    maxFileSize를 1MB로 설정하면 기본값이 1MB인 writeBufferSize가 maxFileSize 값을 충족합니다. 이는 하나의 쓰기 버퍼가 할당되면 조건이 이미 충족되기 때문입니다. 생성된 .parquet 파일의 전체 크기를 줄이려면 writeBufferSize 값을 줄일 수 있습니다. 1MB 미만으로 설정하면 기록된 데이터의 크기가 1MB 미만일 때 조건부 검사가 수행됩니다.

참고: WriteBufferSize 파라미터 설정은 .csv 파일이 아닌 .parquet에만 적용됩니다.


이 문서가 도움이 되었나요?


결제 또는 기술 지원이 필요하세요?