사용자가 Amazon S3에 작은 파일을 업로드합니다. 업로드 후 각 파일은 나중에 분석할 수 있도록 JSON으로 한 번의 간단한 변환이 필요합니다. 각 파일은 업로드 후 가능한 한 빨리 처리되어야 합니다. 수요는 높음에서 낮음 또는 없음까지 다양합니다. 운영 오버헤드가 가장 적은 솔루션은 무엇입니까?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: Amazon S3가 Amazon Simple Queue Service(Amazon SQS) 대기열로 이벤트 알림을 보내도록 구성합니다. AWS Lambda 함수를 사용하여 대기열에서 읽고 데이터를 처리합니다. 결과 JSON 파일을 Amazon DynamoDB에 저장합니다..
이것이 정답인 이유
정답은 S3 이벤트 알림, SQS, AWS Lambda, DynamoDB 조합입니다. S3 이벤트 알림을 SQS 대기열로 보내면 파일 업로드 시 비동기적으로 처리할 수 있습니다. AWS Lambda는 서버리스 방식으로 파일을 처리하고 JSON으로 변환하는 데 이상적이며, 수요 변동에 따라 자동으로 확장 및 축소되어 운영 오버헤드가 가장 적습니다. DynamoDB는 NoSQL 데이터베이스로, JSON 데이터를 저장하고 고성능으로 액세스하는 데 적합합니다.
오답 설명:
Amazon EMR은 대규모 데이터 처리에 적합하지만, 작은 파일의 간단한 변환에는 과도한 리소스이며 운영 오버헤드가 큽니다. Aurora는 관계형 데이터베이스로, JSON 데이터 저장에 DynamoDB보다 유연성이 떨어질 수 있습니다.
Amazon EC2 인스턴스를 사용하는 것은 Lambda보다 운영 오버헤드가 크고, 수요 변동에 대한 자동 확장이 어렵습니다.
Amazon EventBridge와 Kinesis Data Streams는 실시간 스트리밍 데이터 처리에 적합하지만, S3 파일 업로드 후의 간단한 변환에는 S3 이벤트 알림과 SQS 조합이 더 간단하고 비용 효율적입니다. Aurora는 JSON 데이터 저장에 DynamoDB보다 비효율적입니다.