Q79. AWS DynamoDB의 온디맨드 용량 모드로 비용 최적화하기

AWS Certified Solutions Architect - Associate 자격증을 준비하는 여러분, 안녕하세요. 오늘은 DynamoDB의 용량 모드에 대해 알아보고, 비용 최적화와 예측 불가능한 워크로드 처리에 대한 중요한 개념을 살펴보겠습니다.

문제 상황

Q1:
회사에서 데이터 저장을 위해 Amazon DynamoDB 테이블을 사용할 계획입니다. 회사는 비용 최적화에 대해 우려하고 있습니다. 대부분의 아침에는 테이블을 사용하지 않습니다. 저녁에는 읽기 및 쓰기 트래픽이 예측할 수 없는 경우가 많습니다. 트래픽 급증이 발생하면 매우 빠르게 발생합니다.
솔루션 아키텍트는 무엇을 추천해야 합니까?

<small>A company plans to use an Amazon DynamoDB table for data storage. The company is concerned about cost optimization. The table is not used most mornings. In the evenings, read and write traffic is often unpredictable. When traffic spikes occur, they occur very quickly.
What should a solutions architect recommend?</small>

선택지

A. 온디맨드 용량 모드에서 DynamoDB 테이블을 생성합니다.
<small>Create the DynamoDB table in on-demand capacity mode.</small>

B. 글로벌 보조 인덱스가 있는 DynamoDB 테이블을 생성합니다.
<small>Create the DynamoDB table with a global secondary index.</small>

C. 프로비저닝된 용량 및 Auto Scaling을 사용하여 DynamoDB 테이블을 생성합니다.
<small>Create the DynamoDB table with provisioned capacity and Auto Scaling.</small>

D. 프로비저닝된 용량 모드에서 DynamoDB 테이블을 생성하고 전역 테이블로 구성합니다.
<small>Create the DynamoDB table in provisioned capacity mode and configure it as a global table.</small>

정답 및 해설

정답은 A입니다.

온디맨드 용량 모드에서 DynamoDB 테이블을 생성하는 것이 이 상황에 가장 적합합니다. 이 모드는 다음과 같은 이유로 최적의 선택입니다:

  1. 비용 최적화: 온디맨드 모드는 실제 사용량에 따라 요금이 부과되므로, 트래픽이 없는 아침 시간대에는 비용이 거의 발생하지 않습니다.

  2. 예측 불가능한 트래픽 처리: 저녁 시간대의 예측 불가능한 트래픽과 급격한 트래픽 증가에 자동으로 대응할 수 있습니다.

  3. 유연성: 용량 계획이 필요 없어 관리 오버헤드가 줄어듭니다.

  4. 즉각적인 확장: 트래픽 급증 시 즉시 대응하여 처리 용량을 확장할 수 있습니다.

AWS 공식 문서에 따르면, 온디맨드 모드는 이전에 관찰된 트래픽 수준까지 즉시 확장되며, 새로운 트래픽 최고점에 도달하면 신속하게 대응하여 워크로드를 수용합니다.

<small>The correct answer is A: Create the DynamoDB table in on-demand capacity mode.

On-demand capacity mode for DynamoDB tables is the most suitable option in this scenario for the following reasons:

  1. Cost optimization: On-demand mode charges only for actual usage, so there will be minimal costs during the morning hours when there's no traffic.

  2. Handling unpredictable traffic: It can automatically handle the unpredictable traffic in the evenings and rapid traffic spikes.

  3. Flexibility: No capacity planning is required, reducing management overhead.

  4. Instant scaling: It can immediately respond to traffic spikes by expanding processing capacity.

According to AWS documentation, on-demand mode instantly accommodates workloads up to previously observed traffic levels and rapidly adapts to new peaks in traffic.</small>

오답 설명

B. 글로벌 보조 인덱스: 이는 쿼리 성능 향상을 위한 기능이며, 비용 최적화나 용량 관리와는 직접적인 관련이 없습니다.
<small>B. Global Secondary Index: This is a feature for improving query performance and is not directly related to cost optimization or capacity management.</small>

C. 프로비저닝된 용량 및 Auto Scaling: 트래픽 패턴이 예측 불가능하므로 적절한 용량을 프로비저닝하기 어렵습니다. 또한, Auto Scaling이 급격한 트래픽 증가에 즉시 대응하지 못할 수 있습니다.
<small>C. Provisioned capacity with Auto Scaling: It's difficult to provision appropriate capacity when traffic patterns are unpredictable. Also, Auto Scaling may not respond immediately to rapid traffic increases.</small>

D. 프로비저닝된 용량 모드 및 전역 테이블: 전역 테이블은 다중 리전 배포를 위한 것으로, 이 시나리오의 요구사항과 맞지 않습니다. 또한 프로비저닝된 용량은 예측 불가능한 워크로드에 적합하지 않습니다.
<small>D. Provisioned capacity mode and global tables: Global tables are for multi-region deployment, which is not a requirement in this scenario. Also, provisioned capacity is not suitable for unpredictable workloads.</small>

결론

이 문제는 DynamoDB의 다양한 용량 모드와 그 특성을 이해하고 있는지 평가합니다. 온디맨드 용량 모드는 예측 불가능하고 변동이 심한 워크로드에 이상적이며, 사용량에 따라 자동으로 확장되어 비용을 최적화할 수 있습니다. 반면, 프로비저닝된 용량 모드는 예측 가능한 트래픽 패턴에 더 적합합니다. AWS 솔루션 아키텍트로서 각 서비스의 특성을 이해하고 적절한 상황에 맞는 최적의 솔루션을 제안할 수 있어야 합니다.

<small>This question assesses understanding of DynamoDB's various capacity modes and their characteristics. On-demand capacity mode is ideal for unpredictable and highly variable workloads, automatically scaling based on usage to optimize costs. In contrast, provisioned capacity mode is more suitable for predictable traffic patterns. As an AWS Solutions Architect, it's crucial to understand the features of each service and propose the most appropriate solution for a given situation.</small>

원본 문제 링크

댓글

이 블로그의 인기 게시물

Anaconda-Python 환경 VSCode에서 사용하기

Python 웹 크롤링 - Scrapy 활용 파워볼 번호 수집(파일)