DynamoDB를 사용하여 DynamoDB 테이블 백업 및 복원: 작동 방식 - Amazon DynamoDB

DynamoDB를 사용하여 DynamoDB 테이블 백업 및 복원: 작동 방식

DynamoDB 온디맨드 백업 기능을 사용하여 Amazon DynamoDB 테이블의 전체 백업을 생성할 수 있습니다. 이 기능은 AWS 백업에서 독립적으로 사용할 수 있습니다. 이 섹션에서는 DynamoDB 백업 및 복원 프로세스를 수행하는 중에 발생하는 상황에 대한 개요를 제공합니다.

백업

DynamoDB에서 온디맨드 백업을 생성하는 경우, 해당 요청의 타임 마커가 카탈로그화됩니다. 백업은 마지막 전체 테이블 스냅샷에 대한 요청 시간까지 모든 변경 내용을 적용하여 비동기식으로 생성됩니다. DynamoDB 백업 요청은 즉시 처리되며 몇 분 내에 복원할 수 있는 상태가 됩니다.

참고

온디맨드 백업을 생성할 때마다 전체 테이블 데이터가 백업됩니다. 수행할 수 있는 온디맨드 백업 수에는 제한이 없습니다.

DynamoDB의 모든 백업은 테이블의 프로비저닝된 처리량을 사용하지 않고 작동합니다.

DynamoDB 백업은 항목에 걸쳐 인과 관계의 일관성을 보장하지는 않지만, 백업의 업데이트 간 간격은 보통 1초 미만입니다.

백업이 진행 중인 동안에는 다음 작업을 수행할 수 없습니다.

  • 백업 작업을 일시 중지하거나 취소합니다.

  • 백업의 원본 테이블을 삭제합니다.

  • 테이블에 대한 백업이 진행 중인 경우 해당 테이블에서 백업을 비활성화합니다.

예약 스크립트 및 정리 작업을 생성하지 않으려면 AWS Backup을 사용하여 DynamoDB 테이블에 대한 일정 및 보존 정책을 사용하여 백업 계획을 생성할 수 있습니다. AWS Backup은 백업을 실행하고 만료되면 삭제합니다. 자세한 내용은 AWS Backup 개발자 안내서를 참조하세요.

AWS Backup 외에도 AWS Lambda 기능을 사용하여 정기적인 백업이나 향후 백업을 예약할 수 있습니다. 자세한 내용은 블로그 게시물 Amazon DynamoDB 온디맨드 백업 예약을 위한 서버리스 솔루션을 참조하세요.

콘솔을 사용하는 경우 AWS Backup을 사용하여 생성된 모든 백업은 Backup type(백업 유형)AWS로 설정되어 Backups(백업) 탭에 나열됩니다.

참고

Backup type(백업 유형)이 AWS로 표시된 백업은 DynamoDB 콘솔을 사용하여 삭제할 수 없습니다. 이러한 백업을 관리하려면 AWS Backup 콘솔을 사용합니다.

백업을 수행하는 방법은 DynamoDB 테이블 백업 단원을 참조하십시오.

복원

테이블의 프로비저닝된 처리량을 사용하지 않고 해당 테이블을 복원합니다. DynamoDB 백업에서 전체 테이블 복원을 수행하거나 대상 테이블 설정을 구성할 수 있습니다. 복원을 수행할 때 다음 테이블 설정을 변경할 수 있습니다.

  • 글로벌 보조 인덱스(GSI)

  • 로컬 보조 인덱스(LSI)

  • 결제 모드

  • 프로비저닝된 읽기 및 쓰기 용량

  • 암호화 설정

중요

전체 테이블 복원을 수행할 때 대상 테이블은 백업이 요청된 시점에 기록된 대로, 원본 테이블과 동일하게 프로비저닝된 읽기 용량 단위 및 쓰기 용량 단위로 설정됩니다. 복원 프로세스는 로컬 보조 인덱스와 글로벌 보조 인덱스도 복원합니다.

또한 복원된 테이블이 백업이 속하는 리전과 다른 리전에 생성되도록 AWS 리전 간에 DynamoDB 테이블 데이터를 복원할 수 있습니다. AWS 커머셜 리전, AWS 중국 리전 및 AWS GovCloud(미국) 리전 간에 교차 리전 복원을 수행할 수 있습니다. 소스 리전에서 전송한 데이터와 대상 리전의 새 테이블로 복원하는 데 사용된 리소스에 대해서만 요금을 지불하면 됩니다.

새로 복원된 테이블에 일부 또는 전체 보조 인덱스가 생성되지 않도록 제외한 경우 복원이 보다 빠르고 비용 효율적일 수 있습니다.

복원된 테이블에서 다음을 수동으로 설정해야 합니다.

  • Auto Scaling 정책

  • AWS Identity and Access Management (IAM) 정책

  • Amazon CloudWatch 지표 및 경보

  • Tags

  • 스트림 설정

  • Time To Live(TTL) 설정

  • 삭제 방지 설정

  • 시점 복구(PITR) 설정

전체 테이블 데이터만 백업에서 새 테이블로 복원할 수 있습니다. 복원된 테이블은 활성 상태가 된 이후에만 쓸 수 있습니다.

참고

복원 작업 중에는 기존 테이블을 덮어쓸 수 없습니다.

서비스 지표에는 고객 테이블 복원의 95%가 1시간 이내에 완료된다고 표시됩니다. 그러나 복원 시간은 테이블 구성(예: 테이블 크기 및 기본 파티션 수) 및 기타 관련 변수와 직접 관련이 있습니다. 재해 복구를 계획할 때 가장 좋은 방법은 평균 복원 완료 시간을 정기적으로 기록하고 이러한 시간이 전체 복구 시간 목표에 어떤 영향을 미치는지 설정하는 것입니다.

복원을 수행하는 방법은 백업에서 DynamoDB 테이블 복원 단원을 참조하십시오.

액세스 제어에 IAM 정책을 사용할 수 있습니다. 자세한 내용은 DynamoDB 백업 및 복원에 IAM 사용 섹션을 참조하세요.

모든 백업 및 복원 콘솔 작업과 API 작업이 로깅, 연속 모니터링 및 감사를 위해 AWS CloudTrail에 캡처되고 기록됩니다.