설명
DynamoDB Point-in-Time Recovery(PITR)는 사용 가능한 보존 범위의 시점을 선택해 새 테이블로 복원하는 기능입니다. 실수로 데이터를 지우거나 애플리케이션이 잘못된 값을 저장했을 때 도움이 됩니다. 비활성화하면 그 기간의 시점 복구 대신 별도 백업이나 수동 복구에 의존하게 됩니다.
잠재적 영향
- 실수 삭제나 잘못된 갱신 이후 원하는 시점으로 복구하기 어려워질 수 있습니다.
- 복구 시간이 길어지고 데이터 손실이나 수동 작업이 늘어날 수 있습니다.
해결 방법
시점 복구가 필요한 테이블에는 point_in_time_recovery { enabled = true }를 설정하세요. 복구 가능한 기간을 확인하고 새 테이블 복원, 필요한 설정 복구와 애플리케이션 전환을 시험하세요. 장기 보관 백업과 복구 절차도 별도로 운영하세요.
예시
같은 테이블의 PITR 활성화 여부만 비교합니다. 복원 시에는 기존 테이블을 그대로 되감는 것이 아니라 새 테이블을 사용합니다.
변경 전
hcl
resource "aws_dynamodb_table" "orders" {
name = "orders"
billing_mode = "PAY_PER_REQUEST"
hash_key = "id"
attribute {
name = "id"
type = "S"
}
point_in_time_recovery {
enabled = false
}
}
변경 후
hcl
resource "aws_dynamodb_table" "orders" {
name = "orders"
billing_mode = "PAY_PER_REQUEST"
hash_key = "id"
attribute {
name = "id"
type = "S"
}
point_in_time_recovery {
enabled = true
}
}
변경 후에는 활성화 이후 사용 가능한 범위에서 시점 복구를 준비할 수 있습니다. 활성화 전에 발생한 변경을 소급해 복원하는 기능은 아닙니다.