Q41. Amazon AppFlow로 SaaS 데이터 통합 성능 개선하기
AWS 자격증을 준비하는 여러분, 안녕하세요. 오늘은 SaaS 애플리케이션과 AWS 서비스 간의 데이터 통합에 관한 중요한 문제를 살펴보겠습니다. 이 문제는 실제 기업 환경에서 자주 마주치는 성능 개선 과제를 다루고 있어, Solutions Architect로서 꼭 알아야 할 내용입니다.
문제 상황
Q1:
회사의 애플리케이션은 데이터 수집을 위해 여러 SaaS(Software-as-a-Service) 소스와 통합됩니다. 이 회사는 Amazon EC2 인스턴스를 실행하여 데이터를 수신하고 분석을 위해 데이터를 Amazon S3 버킷에 업로드합니다. 데이터를 수신하고 업로드하는 동일한 EC2 인스턴스도 업로드가 완료되면 사용자에게 알림을 보냅니다. 회사는 느린 응용 프로그램 성능을 발견했으며 가능한 한 성능을 개선하려고 합니다.
최소한의 운영 오버헤드로 이러한 요구 사항을 충족하는 솔루션은 무엇입니까?
<small>A company's application integrates with multiple Software-as-a-Service (SaaS) sources for data collection. The company runs Amazon EC2 instances to receive the data and upload the data to Amazon S3 buckets for analysis. The same EC2 instances that receive and upload the data also send notifications to users when uploads are complete. The company has discovered slow application performance and wants to improve performance as much as possible.
Which solution will meet these requirements with the LEAST operational overhead?</small>
선택지
A. EC2 인스턴스가 확장할 수 있도록 Auto Scaling 그룹을 생성합니다. S3 버킷에 업로드가 완료되면 Amazon Simple Notification Service(Amazon SNS) 주제에 이벤트를 보내도록 S3 이벤트 알림을 구성합니다.
<small>Create an Auto Scaling group so that the EC2 instances can scale. Configure S3 event notifications to send events to an Amazon Simple Notification Service (Amazon SNS) topic when uploads to the S3 bucket are complete.</small>
B. Amazon AppFlow 흐름을 생성하여 각 SaaS 소스와 S3 버킷 간에 데이터를 전송합니다. S3 버킷에 업로드가 완료되면 Amazon Simple Notification Service(Amazon SNS) 주제에 이벤트를 보내도록 S3 이벤트 알림을 구성합니다.
<small>Create Amazon AppFlow flows to transfer data between each SaaS source and the S3 bucket. Configure S3 event notifications to send events to an Amazon Simple Notification Service (Amazon SNS) topic when uploads to the S3 bucket are complete.</small>
C. 각 SaaS 소스에 대해 Amazon EventBridge(Amazon CloudWatch Events) 규칙을 생성하여 출력 데이터를 보냅니다. S3 버킷을 규칙의 대상으로 구성합니다. S3 버킷에 업로드가 완료되면 이벤트를 전송하는 두 번째 EventBridge(Cloud Watch Events) 규칙을 생성합니다. Amazon Simple Notification Service(Amazon SNS) 주제를 두 번째 규칙의 대상으로 구성합니다.
<small>Create an Amazon EventBridge (Amazon CloudWatch Events) rule for each SaaS source to send output data. Configure the S3 bucket as the target for the rule. Create a second EventBridge (CloudWatch Events) rule that sends events when uploads to the S3 bucket are complete. Configure an Amazon Simple Notification Service (Amazon SNS) topic as the target for the second rule.</small>
D. EC2 인스턴스 대신 사용할 Docker 컨테이너를 생성합니다. Amazon Elastic Container Service(Amazon ECS)에서 컨테이너화된 애플리케이션을 호스팅합니다. S3 버킷에 업로드가 완료되면 Amazon Simple Notification Service(Amazon SNS) 주제에 이벤트를 보내도록 Amazon CloudWatch Container Insights 를 구성합니다.
<small>Create Docker containers to use instead of EC2 instances. Host the containerized application in Amazon Elastic Container Service (Amazon ECS). Configure Amazon CloudWatch Container Insights to send events to an Amazon Simple Notification Service (Amazon SNS) topic when uploads to the S3 bucket are complete.</small>
정답 및 해설
정답은 B입니다.
Amazon AppFlow는 SaaS 애플리케이션과 AWS 서비스 간의 데이터 전송을 위한 완전 관리형 통합 서비스입니다. 이 솔루션은 다음과 같은 이유로 가장 적합합니다:
-
최소한의 운영 오버헤드: AppFlow는 완전 관리형 서비스로, 인프라 관리나 스케일링에 대한 걱정 없이 사용할 수 있습니다.
-
성능 개선: AppFlow는 효율적인 데이터 전송을 위해 최적화되어 있어, EC2 인스턴스를 직접 관리하는 것보다 더 나은 성능을 제공할 수 있습니다.
-
간편한 설정: AppFlow는 많은 SaaS 애플리케이션과의 기본 통합을 제공하여 설정 과정을 단순화합니다.
-
확장성: 데이터 볼륨이 증가해도 AppFlow가 자동으로 처리합니다.
-
보안: AppFlow는 전송 중 및 저장 시 데이터 암호화를 제공합니다.
S3 이벤트 알림과 SNS를 조합하여 사용자에게 업로드 완료 알림을 보내는 것은 기존 요구사항을 충족하면서도 추가적인 운영 부담을 최소화합니다.
오답 설명
A. Auto Scaling 그룹: EC2 인스턴스의 확장성을 개선하지만, SaaS 통합의 복잡성을 해결하지 않습니다.
C. Event Bridge: 유연한 솔루션이지만, 각 SaaS 소스에 대한 개별 규칙 설정이 필요해 운영 오버헤드가 증가합니다.
D. Docker와 ECS: 컨테이너화는 좋은 접근이지만, AppFlow에 비해 구현과 관리가 더 복잡합니다.
결론
이 문제는 AWS 환경에서 SaaS 데이터 통합 시 성능과 운영 효율성의 중요성을 강조합니다. Amazon AppFlow를 사용하면 최소한의 운영 오버헤드로 SaaS 애플리케이션과 AWS 서비스 간의 데이터 흐름을 효율적으로 관리할 수 있습니다. 이는 클라우드 아키텍처 설계 시 관리형 서비스의 이점을 최대한 활용하는 것의 중요성을 보여주는 좋은 예입니다.
댓글
댓글 쓰기