DynamoDB 테이블을 Amazon S3에 백업하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2020년 6월 16일

Amazon Simple Storage Service(Amazon S3)를 사용하여 Amazon DynamoDB 테이블을 백업하려면 어떻게 해야 합니까?

간략한 설명

DynamoDB는 두 가지 기본 백업 방법을 제공합니다.

두 방법 모두 Amazon S3를 사용합니다. 하지만 이러한 백업에 사용되는 S3 버킷에는 액세스할 수 없습니다. 로컬로 다운로드하거나 다른 AWS 서비스에서 사용할 수 있는 백업을 생성하려면 AWS Data Pipeline, Amazon EMR 또는 AWS Glue를 사용합니다.

해결 방법

데이터 파이프라인

AWS Data Pipeline을 사용하여 테이블을 동일한 계정 또는 다른 계정의 S3 버킷으로 내보냅니다. 자세한 내용은 AWS Data Pipeline을 사용하여 DynamoDB 데이터 가져오기 및 내보내기를 참조하십시오.

  • 장점: 가장 쉬운 방법입니다. 최대한 적은 AWS 리소스를 사용하여 일회성 백업을 만들려는 경우 이 방법을 선택합니다. Data Pipeline은 Amazon EMR을 사용하여 백업을 생성하며 스크립팅이 자동으로 수행됩니다. 이 작업을 수행하기 위해 Apache Hive 또는 Apache Spark를 배울 필요가 없습니다.
  • 단점: 이 방법은 다른 방법보다 사용자 지정 기능이 떨어집니다. Amazon S3에 대한 지속적 백업을 생성하려면 다른 방법 중 하나를 선택하십시오. 다른 AWS 서비스에서 백업을 사용하려는 경우에도 이 방법은 모범 사례가 아닙니다.

Amazon EMR

Hive를 사용하여 S3 버킷으로 데이터를 내보냅니다. 자세한 내용은 DynamoDB에서 데이터 내보내기를 참조하십시오. 또는 오픈 소스 emr-dynamodb-connector를 사용하여 Spark 또는 Hive에서 고유한 사용자 지정 백업 방법을 관리합니다.

  • 장점: 이 방법은 Hive 또는 Spark에 익숙한 활성 Amazon EMR 사용자를 위한 모범 사례입니다. 이러한 방법은 Data Pipeline 방법보다 많은 제어 기능을 제공합니다.
  • 단점: Amazon EMR을 처음 사용하는 경우 이러한 방법은 모범 사례가 아닙니다. Amazon EMR을 사용하지 않지만 지속적이고 사용자 지정 가능한 솔루션을 원하는 경우 AWS Glue에 익숙하지 않더라도 AWS Glue 방법을 사용하는 것이 모범 사례입니다.

AWS Glue

AWS Glue를 사용하여 테이블을 Amazon S3로 복사합니다. 자세한 내용은 AWS Step Functions 및 AWS Glue를 사용하여 Amazon DynamoDB 테이블을 Amazon S3로 내보내는 방법을 참조하십시오.

  • 장점: Amazon Athena와 같은 다른 서비스에서도 사용할 수 있는 자동화된 지속적 백업을 원하는 경우 사용할 수 있는 모범 사례입니다.
  • 단점: AWS Glue에 익숙하지 않은 경우 이 방법은 어려울 수 있지만 Amazon EMR만큼 어렵지는 않을 수 있습니다. 이 방법은 일반적으로 Data Pipeline 방법보다 비용이 많이 듭니다.

이러한 옵션 중 어느 것도 원하는 유연성을 제공하지 않는 경우 DynamoDB API를 사용하여 자체 솔루션을 생성하십시오.


이 문서가 도움이 되었습니까?

AWS에서 개선해야 할 부분이 있습니까?


도움이 필요하십니까?