Amazon DynamoDB 테이블 복원에 시간이 오래 걸리는 이유는 무엇인가요?

3분 분량
0

Amazon DynamoDB 테이블을 복원하려고 하면 복원 프로세스를 완료하는 데 시간이 오래 걸립니다.

해결 방법

백업에서 DynamoDB 테이블을 복원할 때 복원 프로세스를 완료하는 데 보통 1시간도 걸리지 않습니다. 복원 시간은 테이블 크기, 기본 파티션 수, 기타 관련 변수 등 테이블 구성과 관련이 있습니다. 재해 복구를 계획할 때는 평균 복원 완료 시간을 정기적으로 기록하는 것이 좋습니다. 그런 다음 이러한 완료 시간이 전체 복구 시간 목표에 어떤 영향을 미치는지 확인하세요.

DynamoDB가 테이블을 복원하는 데 걸리는 시간은 여러 요인에 따라 다르며 반드시 테이블 크기와 관련이 있는 것은 아닙니다. 테이블에 편차가 심하고 보조 인덱스가 있는 데이터가 포함된 경우 복원 시간이 늘어날 수 있습니다. 복원 프로세스가 진행 중인 경우 테이블 상태는 복원 중입니다. 복원 프로세스가 완료되면 테이블에 상태가 활성으로 표시됩니다. DynamoDB의 모든 백업은 테이블의 프로비저닝된 처리량을 소비하지 않고 작동합니다.

하지만 테이블 복원 시간은 계산할 수 없다는 점에 유의하세요. 백업에서 DynamoDB 테이블을 복원할 때는 다음 정보를 검토하세요.

  • 테이블을 복원하는 데 걸리는 시간이 테이블 크기와 항상 직접적인 상관 관계가 있는 것은 아닙니다.
  • DynamoDB 테이블의 특정 시점 복구를 수행하는 경우 테이블 크기에 관계없이 복원에는 20분 이상이 걸립니다. 테이블을 복원한 후 DynamoDB는 새 테이블을 생성하고 복원 프로세스를 시작하기 위해 모든 리소스를 프로비저닝할 시간이 필요합니다. 그러면 DynamoDB가 실제 데이터를 복사할 수 있습니다.
  • 테이블의 데이터가 균등하게 분산된 경우 복원 시간은 항목 수를 기준으로 가장 큰 단일 파티션에 비례합니다.
  • 한 파티션 키의 데이터가 다른 파티션 키보다 훨씬 많을 때 데이터 왜곡이 발생할 수 있습니다. 데이터가 왜곡되면 핫키와 병목 현상으로 인해 복원 시간이 길어질 수 있습니다. 예를 들어 테이블의 기본 키가 연도의 달을 사용하여 분할하는 경우 데이터가 어떻게 분산되는지 검토하세요. 대부분의 데이터가 12월의 데이터라면 데이터가 치우친 것입니다.
  • 테이블 복원의 효율성과 속도를 높이려면 보조 인덱스 생성을 제외하세요.
  • 스키마와 데이터가 다른 두 테이블의 복원 시간은 비교할 수 없습니다. 테이블 복원 시간은 파티션 수준의 데이터 왜도에 따라 달라집니다.

참고: 복원이 진행 중일 때는 개체에 복원 권한을 부여하는 AWS Identity and Access Management(IAM) 정책을 수정하거나 삭제하지 마세요. IAM 개체에 대한 정책을 수정하거나 삭제하면 예기치 않은 동작이 발생할 수 있습니다. 예를 들어 테이블을 복원하는 동안 테이블에 대한 쓰기 권한을 제거한다고 가정해 보겠습니다. 이 경우 기본 RestoreTableToPointInTime 또는 RestoreTableFromBackup 작업에서는 복원된 데이터를 테이블에 쓸 수 없습니다. 타겟 복원 테이블에 액세스하기 위한 소스 IP 제한을 포함하는 IAM 정책으로 인해 비슷한 문제가 발생할 수 있습니다.

AWS Key Management Service(AWS KMS) 관리형 키 또는 고객 관리형 키로 암호화된 백업의 경우 키를 모니터링하세요. 복원이 진행 중일 때 키를 끄거나 삭제하면 복원이 실패합니다. 복원이 완료된 후 복원된 테이블의 암호화 키를 변경하고 이전 키를 끄거나 삭제할 수 있습니다.

관련 정보

DynamoDB에 온디맨드 백업 및 복원 사용

DynamoDB 백업 및 복원 사용

AWS 공식
AWS 공식업데이트됨 8달 전