회사는 Amazon DynamoDB 테이블을 사용하는 애플리케이션을 보유하고 있습니다. 테이블은 AWS 계정 및 AWS 리전에 걸쳐 분산되어 있습니다. 회사는 AWS CloudFormation을 사용하여 AWS 리소스를 배포합니다. 회사의 새 팀은 사용되지 않는 AWS 리소스를 삭제하고 있습니다. 팀은 AWS Lambda 함수를 실행하여 DynamoDB DeleteTable API 호출을 수행하여 실수로 여러 프로덕션 DynamoDB 테이블을 삭제했습니다. 테이블 삭제로 인해 애플리케이션이 중단됩니다. SysOps 관리자는 테이블의 실수로 인한 삭제 확률을 최소화하는 솔루션을 구현해야 합니다. 솔루션은 또한 실수로 인한 삭제로 인한 데이터 손실을 최소화해야 합니다. 이러한 요구 사항을 충족할 단계의 조합은 무엇입니까? (2개 선택)
- A. DynamoDB 테이블을 배포하는 CloudFormation 스택에 대한 종료 보호를 활성화합니다.
- B. DynamoDB 테이블에 대한 삭제 보호를 활성화합니다.✓ 정답
- C. DynamoDB 테이블에 대한 포인트 인 타임 복구를 활성화합니다. 테이블이 실수로 삭제된 경우 테이블을 복구합니다.✓ 정답
- D. DynamoDB 테이블의 일일 백업을 예약합니다. 테이블이 실수로 삭제된 경우 테이블을 복구합니다.
- E. DynamoDB 테이블을 Amazon S3로 매일 내보냅니다. Amazon S3에서의 가져오기를 사용하여 실수로 삭제된 테이블의 데이터를 복구합니다.
해설
【핵심 용어】 ▸ DynamoDB 삭제 보호(Deletion Protection): 테이블 삭제 API 호출 차단(단, UpdateTable/DescribeTable 등은 허용) ▸ PITR(Point-in-Time Recovery): 최근 35일 내 임의의 시점으로 테이블 복구(자동 백업) ▸ CloudFormation 종료 보호: CloudFormation 스택 삭제 차단(API 직접 삭제는 막지 못함) 【정답 포인트】 ▸ 정답 BC: ▸ (B) 삭제 보호: DynamoDB DeleteTable API 호출 직접 차단(가장 근본적인 방지) ▸ (C) PITR: 삭제 보호가 우회된 경우(또는 실제 삭제 발생) → 35일 이내 복구 가능 ▸ 이 두 가지 조합: "삭제 차단" + "백업으로 복구" 전략 【오답 체크】 ▸ (A) CloudFormation 종료 보호: Lambda가 DynamoDB API 직접 호출(CloudFormation 스택 삭제 아님) → 효과 없음 ▸ (D) 일일 백업: PITR보다 회복 시간 지연(복구 해당일까지만 가능, 시간 단위 미지원) ▸ (E) S3 내보내기: 매일 실행 → 최대 24시간 데이터 손실 가능 【시험 포인트】 ▸ DynamoDB 삭제 보호 활성화 효과 ▸ PITR(Point-in-Time Recovery) 기능 및 회복 범위(35일) ▸ CloudFormation 종료 보호의 한계(API 직접 호출 차단 안 됨) ▸ 삭제 방지 vs 데이터 복구 전략