AWS DMS를 사용하여 데이터를 Parquet 형식으로 Amazon S3로 마이그레이션하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2021년 1월 18일

AWS Database Migration Service(AWS DMS)를 사용하여 Apache Parquet(.parquet) 형식의 데이터를 Amazon Simple Storage Service(Amazon S3)로 마이그레이션하려면 어떻게 해야 합니까?

해결 방법

참고: AWS 명령줄 인터페이스(AWS CLI) 명령을 실행할 때 오류가 발생할 경우 AWS CLI의 최신 버전을 사용하고 있는지 확인하세요.

복제 3.1.3 또는 최신 버전을 사용하는 경우 AWS DMS를 사용하여 데이터를 Apache Parquet 형식으로 S3 버킷에 마이그레이션할 수 있습니다. 기본 Parquet 버전은 Parquet 1.0입니다.

1.    AWS DMS 콘솔에서 대상 Amazon SE 엔드포인트를 생성한 후 다음과 같이 추가 연결 속성(ECA)을 추가합니다. 또한 S3 대상에 Parquet 객체를 저장하는 데 사용할 수 있는 다른 추가 연결 속성을 확인합니다.

dataFormat=parquet;

또는 AWS 명령줄 인터페이스(AWS CLI)에서 create-endpoint 명령을 사용하여 대상 Amazon S3 엔드포인트를 생성합니다.

aws dms create-endpoint --endpoint-identifier s3-target-parque --engine-name s3 --endpoint-type target --s3-settings '{"ServiceAccessRoleArn": <IAM role ARN for S3 endpoint>, "BucketName": <S3 bucket name to migrate to>, "DataFormat": "parquet"}'

2.    다음과 같은 추가 연결 속성을 사용하여 출력 파일의 Parquet 버전을 지정합니다.

parquetVersion=PARQUET_2_0;

3.    describe-endpoints 명령을 실행하여 생성한 S3 엔트포인트에 S3 설정 DataFormat이 있는지 또는 추가 연결 속성 dataFormat“parquet”으로 설정되어 있는지 확인합니다. S3 설정 DataFormat을 확인하려면 다음과 유사한 명령을 실행합니다.

aws dms describe-endpoints --filters Name=endpoint-arn,Values=<S3 target endpoint ARN> --query "Endpoints[].S3Settings.DataFormat"
[
    "parquet"
]

4.    DataFormat 파라미터의 값이 CSV인 경우 엔드포인트를 다시 생성합니다.

5.    Parquet 형식의 출력이 있으면 Apache Parquet 명령줄 도구를 설치하여 출력 파일을 구문 분석할 수 있습니다.

pip install parquet-cli --user

6.    그런 다음 파일 형식을 검사합니다.

parq LOAD00000001.parquet 
 # Metadata 
 <pyarrow._parquet.FileMetaData object at 0x10e948aa0>
  created_by: AWS
  num_columns: 2
  num_rows: 2
  num_row_groups: 1
  format_version: 1.0
  serialized_size: 169

7.    마지막으로 파일 콘텐츠를 인쇄합니다.

parq LOAD00000001.parquet --head
   i        c
0  1  insert1
1  2  insert2

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


결제 또는 기술 지원이 필요합니까?