DynamoDB 테이블에 대량 업로드를 실행하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2022년 6월 23일

Amazon DynamoDB 테이블에 데이터를 대량으로 업로드하려고 합니다.

해결 방법

다음 옵션 중 하나를 사용하여 DynamoDB에 대량으로 데이터를 업로드합니다.

BatchWriteItem

BatchWriteItem API 작업을 사용하여 여러 개의 PutItem 호출을 동시에 실행할 수 있습니다. 코드에서 병렬 프로세스 또는 스레드를 사용하여 여러 병렬 BatchWriteItem API 호출을 실행하여 데이터를 더 빠르게 로드할 수도 있습니다.

AWS Data Pipeline

데이터가 Amazon Simple Storage Service(Amazon S3)에 있는 경우 Data Pipeline을 사용하여 DynamoDB로 내보낼 수 있습니다. Data Pipeline은 Amazon EMR 클러스터를 생성하고 데이터를 Amazon S3에서 DynamoDB로 내보내는 프로세스를 병렬 BatchWriteItem 요청을 통해 자동화합니다. Data Pipeline을 사용할 때 병렬 전송을 위한 코드를 작성할 필요가 없습니다. 자세한 내용은 Amazon S3에서 DynamoDB로 데이터 가져오기를 참조하세요.

Amazon EMR

Amazon EMR 및 Apache Hive를 사용하여 데이터를 DynamoDB에 업로드하려면 다음을 수행합니다.

  1. EMR 클러스터를 만듭니다.
    릴리즈에서 emr-5.30.0 이상을 선택합니다.
    애플리케이션의 경우 Hive가 포함된 옵션을 선택합니다.
  2. 데이터의 Amazon S3 위치를 가리키는외부 Hive 테이블을 생성합니다.
  3. 다른 외부 Hive 테이블을 생성하여 DynamoDB 테이블을 가리킵니다.
  4. INSERT OVERWRITE 명령을 사용하여 Amazon S3에서 DynamoDB로 데이터를 씁니다. 자세한 내용은 DynamoDB로 데이터 가져오기를 참조하세요.

AWS Database Migration Service(AWS DMS)

AWS DMS를 사용하여 관계형 데이터베이스에서 DynamoDB 테이블로 데이터를 내보낼 수 있습니다. 자세한 내용은 Amazon DynamoDB 데이터베이스를 AWS Database Migration Service의 대상으로 사용을 참조하세요.

AWS Glue

업로드하려는 데이터가 원래 DynamoDB 내보내기 기능을 사용하여 다른 DynamoDB 테이블에서 S3로 내보낸 데이터인 경우 이 옵션을 사용하는 것이 좋습니다. 이 옵션은 대규모 데이터 세트를 업로드할 때 효율적입니다. 이는 내보내기 기능이 DynamoDB 백업 기능을 사용하고 소스 테이블을 스캔하지 않기 때문입니다. 이 기능은 소스 테이블의 성능이나 가용성에 영향을 주지 않습니다. 자세한 내용은 Using AWS Glue and Amazon DynamoDB export를 참조하세요.


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


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