회사가 AWS에서 웹 애플리케이션을 구축하고 있습니다. 고객이 요청을 보내면 애플리케이션이 보고서를 생성한 후 1시간 이내에 고객이 보고서를 사용할 수 있게 합니다. 보고서는 고객이 8시간 동안 액세스할 수 있어야 합니다. 일부 보고서는 1 MB보다 큽니다. 각 보고서는 고객마다 고유합니다. 애플리케이션은 2일보다 오래된 모든 보고서를 삭제해야 합니다. 이러한 요구 사항을 가장 적은 운영 오버헤드로 충족하는 솔루션은 무엇입니까?
- A. 보고서를 생성한 다음 지정된 TTL을 가진 Amazon DynamoDB 항목으로 보고서를 저장합니다. DynamoDB에서 보고서를 검색하는 URL을 생성합니다. 웹 애플리케이션을 통해 고객에게 URL을 제공합니다.
- B. 보고서를 생성한 다음 서버 측 암호화를 사용하는 Amazon S3 버킷에 보고서를 저장합니다. Amazon Simple Notification Service(Amazon SNS) 메시지에 보고서를 첨부합니다. 고객을 Amazon SNS 이메일 알림에 구독하게 합니다.
- C. 보고서를 생성한 다음 서버 측 암호화를 사용하는 Amazon S3 버킷에 보고서를 저장합니다. 만료 날짜가 포함된 presigned URL을 생성합니다. 웹 애플리케이션을 통해 고객에게 URL을 제공합니다. S3 Lifecycle 구성 규칙을 S3 버킷에 추가하여 오래된 보고서를 삭제합니다.✓ 정답
- D. 보고서를 생성한 다음 날짜 스탬프가 있는 Amazon RDS 데이터베이스에 보고서를 저장합니다. RDS 데이터베이스에서 보고서를 검색하는 URL을 생성합니다. 웹 애플리케이션을 통해 고객에게 URL을 제공합니다. 만료된 날짜 스탬프가 있는 데이터베이스 레코드를 삭제하기 위해 시간별 AWS Lambda 함수를 예약합니다.
해설
【핵심 용어】 ▸ S3 + Presigned URL — 만료 시간 포함 URL로 객체 임시 접근. 8시간 유효. ▸ S3 Lifecycle — 2일 후 자동 삭제. 【정답 포인트】 ▸ 1시간 내 생성 + 8시간 접근 + 2일 후 자동 삭제 = S3 + presigned URL + Lifecycle. 【오답 체크】 (A) DynamoDB TTL은 정확하지 않음(분 단위 + 1MB 한계). (B) SNS 첨부 파일은 한도·표준 패턴 아님. (D) RDS는 운영 부담 + 큰 파일 부적합.