[문제 18]
회사는 300개 이상의 글로벌 웹사이트 및 애플리케이션을 호스팅합니다. 이 회사는 매일 30TB 이상의 클릭스트림 데이터를 분석할 플랫폼이 필요합니다.
솔루션 설계자는 클릭스트림 데이터를 전송하고 처리하기 위해 무엇을 해야 합니까?
A. 데이터를 Amazon S3 버킷에 보관하고 데이터로 Amazon EMR 클러스터를 실행하여 분석을 생성하도록 AWS Data Pipeline을 설계합니다.
B. Amazon EC2 인스턴스의 Auto Scaling 그룹을 생성하여 데이터를 처리하고 Amazon Redshift가 Tor 분석을 사용할 수 있도록 Amazon S3 데이터 레이크로 보냅니다.
C. Amazon CloudFront에 데이터 캐시: Amazon S3 버킷에 데이터 저장. S3 버킷에 객체가 추가되면 AWS Lambda 함수를 실행하여 데이터 tor 분석을 처리합니다.
D. Amazon Kinesis Data Streams에서 데이터를 수집합니다. Amazon Kinesis Data Firehose를 사용하여 Amazon S3 데이터 레이크로 데이터 전송, 분석을 위해 Amazon Redshift에 데이터 로드합니다.
[문제 분석]
이 문제는 대규모 클릭스트림 데이터(매일 30TB 이상)를 처리할 플랫폼을 설계하는 방법을 묻습니다. 클릭스트림 데이터는 실시간 수집과 분석이 필요하며, 이를 효율적으로 처리할 수 있는 아키텍처가 요구됩니다. 따라서 실시간 데이터 수집, 처리, 분석을 위한 솔루션을 선택해야 합니다.
[각 보기 분석]
A. 데이터를 Amazon S3 버킷에 보관하고 Amazon EMR 클러스터를 실행하여 분석을 생성하도록 AWS Data Pipeline을 설계합니다.
- 설명: Amazon S3는 객체 스토리지로, 데이터를 저장하는 데 적합하며, EMR은 대규모 데이터 분석에 사용됩니다. AWS Data Pipeline은 데이터의 이동과 변환을 자동화합니다.
- 부적합: 이 방법은 실시간 데이터 처리가 아닌 배치 처리에 적합합니다. 클릭스트림 데이터는 실시간으로 수집하고 분석해야 하므로 적합하지 않습니다.
B. Amazon EC2 인스턴스의 Auto Scaling 그룹을 생성하여 데이터를 처리하고 Amazon Redshift가 분석할 수 있도록 Amazon S3 데이터 레이크로 보냅니다.
- 설명: Auto Scaling 그룹은 트래픽에 따라 EC2 인스턴스를 자동으로 확장하거나 축소할 수 있으며, Amazon Redshift는 대규모 데이터 분석을 위한 데이터 웨어하우스입니다.
- 부적합: 이 방법은 실시간 스트리밍 데이터 처리에 적합하지 않습니다. Redshift는 대규모 데이터 분석에 적합하지만 실시간 데이터 수집에는 최적화되어 있지 않습니다.
C. Amazon CloudFront에 데이터 캐시를 설정하고, S3 버킷에 데이터를 저장하며 S3에 객체가 추가되면 AWS Lambda 함수를 실행하여 분석합니다.
- 설명: CloudFront는 주로 콘텐츠 전송 네트워크(CDN)로 사용되며, 데이터를 캐시하고 Lambda 함수를 통해 처리할 수 있습니다.
- 부적합: 이 방법은 실시간 스트리밍 데이터 처리를 위한 최적의 선택이 아닙니다. Lambda는 서버리스 컴퓨팅으로, 대규모 데이터를 처리하는 데 적합하지 않습니다.
D. Amazon Kinesis Data Streams에서 데이터를 수집하고 Kinesis Data Firehose를 사용해 데이터를 Amazon S3로 전송한 후 Amazon Redshift에서 분석합니다.
- 설명: Amazon Kinesis는 실시간 데이터 스트리밍을 위한 서비스로, Kinesis Data Streams를 사용해 대규모 데이터를 수집할 수 있습니다. Kinesis Data Firehose는 데이터를 S3, Redshift로 전송하여 분석을 지원합니다.
- 적합성: 이 방법은 실시간 스트리밍 데이터 수집 및 처리에 가장 적합합니다. 클릭스트림 데이터를 실시간으로 분석하는 데 필요한 아키텍처를 제공합니다.
[정답 분석]
가장 적합한 답은 D. Amazon Kinesis Data Streams에서 데이터를 수집하고 Kinesis Data Firehose를 사용하여 Amazon S3로 데이터를 전송한 후 Amazon Redshift에서 분석하는 것입니다. 이 아키텍처는 실시간 데이터 스트리밍과 대규모 데이터 처리에 최적화되어 있으며, 클릭스트림 데이터 분석에 적합한 솔루션입니다.
[서비스 및 관련 옵션]
- Amazon Kinesis Data Streams: 실시간으로 데이터를 스트리밍할 수 있으며, 대규모 데이터 수집에 적합합니다.
- Amazon Kinesis Data Firehose: 스트리밍 데이터를 Amazon S3, Amazon Redshift, Amazon Elasticsearch로 전송할 수 있습니다.
- Amazon Redshift: 대규모 데이터 웨어하우스 솔루션으로, 분석 작업을 수행하는 데 적합합니다.
- Amazon S3: 데이터를 저장할 수 있는 객체 스토리지로, 데이터 레이크를 구성하는 데 사용됩니다.
[도메인]
이 문제는 도메인 4: 비용에 최적화된 아키텍처 설계에 해당합니다. 대규모 데이터 수집과 실시간 스트리밍 데이터 처리를 설계하는 방법과 관련이 있습니다.
1. 태스크 설명: 태스크 4.4: 데이터를 효율적으로 수집하고 처리할 수 있는 비용 최적화된 아키텍처 설계.
2. 관련 지식:
1) Amazon Kinesis를 사용한 실시간 데이터 스트리밍.
2) Amazon Redshift를 사용한 대규모 데이터 분석.
[시험에서 주로 출제되는 핵심 개념]
Amazon Kinesis
Amazon Kinesis는 AWS에서 제공하는 실시간 데이터 스트리밍 플랫폼입니다. 이를 통해 사용자는 방대한 양의 데이터를 실시간으로 수집, 처리, 분석할 수 있습니다. 클릭스트림 데이터, IoT 센서 데이터, 소셜 미디어 피드 등과 같은 데이터 스트림을 빠르게 처리하여 실시간 분석이 가능하며, 대규모 데이터를 처리할 수 있도록 자동 확장 기능을 제공합니다.
Amazon Kinesis는 주로 실시간 데이터 스트리밍을 다루기 때문에 시험에서도 이에 대한 개념이 자주 출제됩니다. Kinesis는 3개의 주요 서비스로 나뉘며, 각각 다른 스트리밍 요구를 처리할 수 있습니다.
1. Kinesis Data Streams
2. Kinesis Data Firehose
3. Kinesis Data Analytics
이 각각의 서비스는 스트리밍 데이터의 수집, 전송, 분석을 위한 서로 다른 기능을 제공하며, 이를 통합해 대규모 실시간 데이터 파이프라인을 구축할 수 있습니다.
1. Kinesis Data Streams (KDS)
Kinesis Data Streams(KDS)는 실시간 데이터 스트리밍을 위한 핵심 서비스로, 사용자가 실시간으로 데이터를 수집하고 처리할 수 있도록 도와줍니다. 대규모의 클릭스트림 데이터나 IoT 센서 데이터 등과 같은 데이터를 빠르게 처리할 수 있는 구조로 설계되어 있으며, 스트리밍 데이터를 초당 수백만 개의 기록으로 처리할 수 있습니다.
주요 특징:
- Shards: KDS의 기본 단위로, 각각의 샤드가 실시간 데이터 처리를 담당합니다. 각 샤드는 초당 1MB의 쓰기 처리량과 초당 2MB의 읽기 처리량을 제공합니다. 샤드 수를 늘리면 처리량을 수평 확장할 수 있어 대규모 데이터를 처리할 수 있습니다.
- 데이터 보존: 기본적으로 데이터는 스트림에 최대 24시간 저장되며, 사용자 설정에 따라 최대 7일까지 데이터 보존 기간을 확장할 수 있습니다.
- 실시간 처리: KDS는 데이터가 수집되는 즉시 실시간 처리를 가능하게 하며, Lambda와 같은 AWS 서비스와 통합하여 데이터를 자동으로 처리할 수 있습니다.
시험에서의 출제 포인트:
- Kinesis Data Streams의 구조와 샤드 개념: 시험에서는 KDS가 어떻게 작동하는지, 샤드가 어떻게 확장되고 데이터를 분산 처리하는지에 대한 질문이 나옵니다.
- 데이터 보존 기간과 데이터 처리량을 설정하는 방법에 대해 묻는 질문도 출제됩니다.
- KDS와 Lambda를 사용해 실시간 데이터를 처리하는 아키텍처에 대한 이해도 요구됩니다.
2. Kinesis Data Firehose
Kinesis Data Firehose는 실시간 데이터 수집 및 전송을 위한 완전 관리형 서비스입니다. Kinesis Data Firehose는 데이터를 자동으로 버퍼링하고, 대규모 데이터 처리가 가능하도록 지원하며, 데이터를 최종 목적지인 Amazon S3, Amazon Redshift, Amazon Elasticsearch, Splunk 등으로 전송할 수 있습니다.
주요 특징:
- 자동 확장: Kinesis Data Firehose는 사용자가 용량을 관리할 필요 없이 자동으로 확장되므로 대규모 데이터 스트림을 처리할 때 관리 부담이 없습니다.
- 데이터 변환: Firehose는 데이터를 전송하기 전에 AWS Lambda를 사용하여 실시간 데이터 변환을 지원합니다. 예를 들어, 원본 데이터를 형식화하여 S3로 전송하기 전에 변환하는 작업을 수행할 수 있습니다.
- 배치 처리: Firehose는 데이터를 실시간으로 처리하면서도, 지정된 버퍼 크기와 시간 기준으로 데이터를 배치 처리하여 전송할 수 있습니다.
시험에서의 출제 포인트:
- Kinesis Data Firehose의 자동 확장과 관리 간소화 특징을 묻는 질문이 자주 출제됩니다. Kinesis Data Firehose는 관리형 서비스이기 때문에 사용자가 별도의 용량 계획을 할 필요가 없으며, 이에 대한 이해가 필요합니다.
- 데이터 변환과 Lambda 통합을 통한 실시간 데이터 처리의 흐름과 관련된 질문이 출제될 수 있습니다.
- Firehose가 데이터를 Amazon S3, Amazon Redshift 등으로 전송하는 방식과, 이를 통해 데이터 레이크나 데이터 웨어하우스에 실시간 데이터를 적재하는 시나리오가 출제될 수 있습니다.
3. Kinesis Data Analytics
Kinesis Data Analytics는 실시간 데이터 스트리밍 분석을 가능하게 하는 서비스입니다. 사용자는 SQL 기반의 질의를 사용해 Kinesis Data Streams 또는 Firehose에서 수집된 데이터를 실시간으로 분석할 수 있습니다. 이를 통해 클릭스트림, IoT 센서 데이터 등에서 실시간 인사이트를 얻을 수 있습니다.
주요 특징:
- 실시간 SQL 쿼리: 사용자는 데이터를 스트리밍으로 전송하는 동시에 SQL 쿼리를 실행하여 데이터를 분석할 수 있습니다.
- 실시간 대시보드: 분석 결과를 실시간으로 대시보드에 표시하거나, AWS Lambda나 Kinesis Data Firehose로 전송하여 추가 작업을 수행할 수 있습니다.
- 자동 스케일링: Kinesis Data Analytics는 자동으로 확장하여 스트리밍 데이터의 분석 요구 사항을 처리할 수 있습니다.
시험에서의 출제 포인트:
- SQL 쿼리를 사용한 실시간 데이터 분석: Kinesis Data Analytics에서 SQL을 사용해 스트리밍 데이터를 실시간으로 분석하는 방법을 이해하는 것이 중요합니다.
- Lambda 통합을 통한 분석 결과의 실시간 처리 흐름도 시험에 자주 출제됩니다.
- 자동 확장 기능과 실시간 분석을 통해 얻는 인사이트를 어떻게 활용할 수 있는지에 대한 질문이 출제됩니다.
Amazon Redshift
Amazon Redshift는 AWS에서 제공하는 완전 관리형 데이터 웨어하우스 서비스로, 대규모 데이터 분석에 적합합니다. 페타바이트 규모의 데이터를 처리할 수 있으며, 여러 데이터 소스에서 수집된 데이터를 중앙에서 분석할 수 있는 강력한 기능을 제공합니다.
주요 특징:
- MPP (Massively Parallel Processing): Amazon Redshift는 대규모 병렬 처리를 통해 데이터를 빠르게 처리하고 분석합니다. 이를 통해 대규모 쿼리도 빠르게 실행할 수 있습니다.
- Amazon S3와의 통합: Redshift는 S3와 통합하여, S3에 저장된 데이터 레이크에서 데이터를 가져와 분석할 수 있습니다.
- Spectrum 기능: Redshift Spectrum을 사용하면 S3에 저장된 데이터를 직접 쿼리하여 분석할 수 있으며, 데이터를 Redshift로 가져오지 않고도 대규모 분석을 수행할 수 있습니다.
시험에서의 출제 포인트:
- Redshift와 S3의 데이터 통합: Redshift와 S3를 통합하여 데이터를 효율적으로 분석하는 방법에 대한 이해가 중요합니다.
- Redshift Spectrum을 사용해 S3의 데이터를 직접 쿼리하고 분석하는 시나리오가 자주 출제됩니다.
- MPP 아키텍처를 통해 대규모 데이터를 빠르게 처리하는 Redshift의 성능 최적화에 대한 질문도 출제될 수 있습니다.
통합 아키텍처
시험에서는 Kinesis Data Streams, Firehose, Redshift 등 여러 AWS 서비스를 통합하여 대규모 데이터 스트리밍 및 분석을 수행하는 아키텍처에 대한 이해가 중요합니다. 특히 실시간 데이터 수집, 전송, 분석 흐름을 제대로 이해하고, 각 서비스의 역할을 파악하는 것이 필요합니다.
- 실시간 스트리밍 데이터 수집: Kinesis Data Streams로 데이터를 실시간으로 수집.
- 데이터 전송: Kinesis Data Firehose를 사용해 데이터를 Amazon S3나 Redshift로 전송.
- 실시간 데이터 분석: Redshift 또는 Kinesis Data Analytics를 통해 데이터를 실시간으로 분석.
요약
Amazon Kinesis는 실시간 스트리밍 데이터를 수집, 처리, 분석하는 데 적합한 AWS 서비스입니다. 시험에서는 Kinesis Data Streams, Firehose, Analytics의 차이점과 사용 사례에 대한 이해가 중요합니다. 또한 Amazon Redshift와 통합하여 대규모 데이터 분석을 수행하는 시나리오도 자주 출제됩니다. 자동 확장, 실시간 처리 및 SQL 기반 분석과 관련된 개념을 숙지하는 것이 중요합니다.
'스케쥴 > 시험' 카테고리의 다른 글
AWS SAA-C03 한국어 샘플 20번 (0) | 2024.10.20 |
---|---|
AWS SAA-C03 한국어 샘플 19번 (0) | 2024.10.20 |
AWS SAA-C03 한국어 샘플 17번 (0) | 2024.10.20 |
AWS SAA-C03 한국어 샘플 16번 (2) | 2024.10.20 |
AWS SAA-C03 한국어 샘플 15번 (1) | 2024.10.20 |