테이블 복원을 시작하여 복구
PITR을 사용하면 테이블을 PITR 복구 기간 내의 특정 시점(초 단위)로 복원할 수 있습니다. PITR 복구 기간은 PITR이 활성화될 때 시작되며 최대 35일의 기록을 보존합니다. 복구 기간을 더 짧게 구성할 수도 있습니다.
전체 PITR 테이블 복원을 시작할 때 다음 사항을 고려하세요.
-
복원은 새 테이블을 생성합니다. 테이블 복원 작업은 원본 테이블에서 인 플레이스로 작동하지 않습니다. 인 플레이스 옵션은 원치 않는 쓰기를 롤백하여 인 플레이스 복구 섹션을 참조하세요.
-
동일한 리전의 새 테이블 또는 다른 리전으로 복원할 수 있습니다. 다른 리전으로 복원하면 데이터 전송 요금이 발생합니다.
-
테이블을 복원할 때 보조 인덱스를 포함할 수도 포함하지 않을 수도 있습니다. 보조 인덱스를 포함하지 않고 복원하는 것이 더 빠르고 비용 효율적일 수 있습니다.
-
복원이 완료되려면 몇 시간 정도 걸릴 수 있습니다. 복원 시간은 여러 요인에 따라 다르며 항상 테이블 크기와 상관관계가 있는 것은 아닙니다.
PITR 테이블을 복원한 후 원본을 완전히 대체하여 새 테이블을 사용할 수 있습니다. 원본 테이블과 비교하여 차이점을 찾을 수도 있습니다. 더 간단한 접근 방식은 원치 않는 쓰기를 롤백하여 인 플레이스 복구 섹션을 참조하세요.
복원된 테이블을 서비스에 투입할 때 다음 사항을 고려하세요.
-
코드형 인프라 환경(AWS CloudFormation, AWS 클라우드 개발 키트(AWS CDK), Terraform)의 경우 복원된 테이블을 IaC 환경에 채택하여 관리합니다.
-
새 테이블을 새 이름으로 참조하도록 클라이언트 연결을 업데이트합니다.
-
원본 테이블에 스트림 설정이 구성된 경우 새 테이블에 다시 추가합니다. DynamoDB 스트림 이름에는 스트림 생성 시간이 포함되므로 새 스트림의 이름은 이전 스트림과 다릅니다. IAM 또는 다운스트림 소비자 코드에서 이전 스트림 이름에 대한 참조를 업데이트합니다.
-
원본 테이블에 PITR이 활성화된 경우 새 테이블에서 다시 활성화합니다.
-
원본 테이블에 삭제 방지가 활성화된 경우 새 테이블에서 다시 활성화합니다.
-
원본 테이블에 태그가 지정된 경우 새 테이블에 태그를 다시 추가합니다.
-
원본 테이블에 리소스 기반 정책이 적용된 경우 새 테이블에 RBP를 다시 추가합니다.
-
원본 테이블을 참조하는 교차 계정 액세스 IAM 정책을 업데이트합니다.
-
새 테이블에서 오토 스케일링 설정을 조정합니다.
-
원본 테이블에 TTL이 적용된 경우 새 테이블에서 TTL 속성을 설정합니다.
-
원본 테이블에 사용자 지정 테이블 클래스가 있는 경우 새 테이블에서 테이블 클래스를 조정합니다.
-
새 테이블의 웜 처리량 설정을 검토하고 필요한 경우 읽기 및 쓰기 값을 상향합니다.
-
글로벌 테이블인 경우 원본 테이블과 일치하도록 새 테이블의 복제본을 추가합니다.
-
복원된 테이블이 완전히 구성되고 서비스 상태로 전환된 후 원본 테이블을 삭제합니다.
MRSC 글로벌 테이블을 복원하는 경우 새로 복원된 테이블을 MRSC 테이블로 만들 수 없습니다. 빈 테이블만 MRSC 테이블로 만들 수 있기 때문입니다. 한 가지 해결 방법은 테이블을 복원한 다음 복원된 테이블의 데이터를 빈 MRSC 테이블로 복사하는 것입니다.