AWS Solutions Architect Associate (SAA-C03) · 24% practice allocation

AWS SAA-C03: Design High-Performing Architectures Practice Questions

5 free sample questions from the Design High-Performing Architectures domain, with answers and explanations. The full SAA-C03 bank has 250 questions across 4 domains. Questions are scenario-based and written from the official AWS exam guide.

1.

A company runs a critical OLTP application on Amazon RDS for PostgreSQL (db.r6g.4xlarge, Multi-AZ). During a recent incident, the RDS instance experienced a storage-full event, causing the database to become read-only and the application to fail. The team wants to prevent this from happening again with the least operational overhead. Which combination of actions should the solutions architect take? (Select TWO)

  • A. Schedule a weekly AWS Lambda function to check storage utilization and manually increase storage
  • B. Create an Amazon CloudWatch alarm on the FreeStorageSpace metric and trigger an SNS notification✓ Correct
  • C. Migrate to Amazon Aurora to benefit from Aurora's auto-scaling distributed storage
  • D. Enable automated backups with a 35-day retention period to recover from storage-full events
  • E. Increase the current storage allocation by 100% immediately to provide headroom
  • F. Enable RDS Storage Auto Scaling with a maximum storage threshold of 10 TB✓ Correct
Explanation

RDS Storage Auto Scaling automatically expands storage when free space is low, with no manual intervention — directly preventing the storage-full event from recurring. Setting a maximum threshold protects against runaway growth. A CloudWatch alarm on FreeStorageSpace provides early warning so the team can monitor trends and act proactively before any threshold is reached, even if auto scaling is enabled. Migrating to Aurora would solve the storage problem (Aurora auto-scales in 10 GB increments) but is a major migration effort with significant operational overhead. Scheduling a Lambda function to check and increase storage manually is operationally complex, error-prone, and can miss rapid storage growth. Increasing storage by 100% immediately provides temporary headroom but is a one-time fix that doesn't prevent future recurrence. Automated backups help with recovery after a failure but do not prevent storage exhaustion.

2.

A company runs a multi-tier web application. The web tier on EC2 needs to query an Amazon Aurora MySQL cluster. The DBAs report that the Aurora writer instance is receiving a large number of connection attempts from hundreds of web tier instances during auto-scaling events, causing connection storms that degrade database performance. Which solution should the solutions architect implement to address this?

  • A. Increase the max_connections parameter in the Aurora parameter group.
  • B. Use Amazon RDS Proxy in front of the Aurora cluster to pool and multiplex database connections.✓ Correct
  • C. Enable Aurora Auto Scaling to add read replicas whenever CPU exceeds 70%.
  • D. Switch Aurora to Serverless v2 to automatically scale database capacity during connection spikes.
Explanation

Amazon RDS Proxy maintains a warm pool of database connections and multiplexes thousands of application-level connections onto a smaller set of actual database connections. This eliminates connection storms during scaling events and improves resilience without changing the database or application significantly. — Aurora Auto Scaling adds read replicas to handle read throughput, but connection storms typically hit the writer endpoint; read replicas don't accept write connections and don't solve the writer connection exhaustion. — Aurora Serverless v2 scales compute capacity (ACUs) but doesn't inherently reduce the number of simultaneous connections from application instances — connection storms can still occur with Serverless v2. — Increasing max_connections raises the database's connection limit but doesn't pool or multiplex connections; under extreme scaling events, you still risk exhausting memory and degrading performance at higher connection counts.

3.

A SaaS company stores customer data in Amazon DynamoDB. Their application reads the same set of 'hot' items thousands of times per second, leading to throttling on those partitions. The data changes approximately every 30 minutes. A solutions architect wants to add caching to eliminate the throttling without significantly changing application code. Which solution is MOST appropriate?

  • A. Switch DynamoDB to provisioned capacity mode and increase the RCU allocation to handle the hot reads.
  • B. Enable DynamoDB global tables to distribute reads across multiple AWS regions.
  • C. Add an ElastiCache for Redis cluster and rewrite the application data access layer to check cache before querying DynamoDB.
  • D. Enable DynamoDB Accelerator (DAX) and update the application SDK endpoint from DynamoDB to DAX.✓ Correct
Explanation

DAX is a fully managed, DynamoDB-compatible in-memory cache that sits directly in front of DynamoDB. It requires minimal code changes — you simply point the DynamoDB SDK to the DAX endpoint instead. It handles hot-key caching transparently and reduces read latency to microseconds, eliminating partition throttling. — ElastiCache for Redis can also cache DynamoDB results effectively, but it requires significant application-level code changes (explicit cache-aside logic, cache invalidation, serialization), which the requirement explicitly wants to avoid. — Increasing RCUs would reduce throttling but does not address the fundamental hot-partition problem (RCUs are distributed across partitions); it is also more expensive and doesn't actually cache reads. — Global tables replicate data across regions for geographic distribution; they do not solve the hot-key throttling problem within a single region.

4.

A company's data science team runs nightly batch jobs on Amazon EMR that process 5 TB of raw log data stored in S3, transform it, and write aggregated results back to S3. The jobs run for 4 hours and are not time-critical. The team wants to reduce compute costs significantly. Which EMR configuration should the solutions architect recommend?

  • A. Use Reserved Instances for the master node and On-Demand for core nodes only.
  • B. Use Spot Instances for all nodes including the master and core nodes to maximize savings.
  • C. Use On-Demand instances for all EMR nodes to ensure job reliability.
  • D. Use On-Demand instances for the master and core nodes, and Spot Instances for task nodes.✓ Correct
Explanation

The recommended EMR cost-optimization pattern is: On-Demand (or Reserved) for the master node (cluster control plane — losing it terminates the cluster) and core nodes (they store HDFS data — losing them can corrupt the cluster), and Spot Instances for task nodes (which only process data and can be replaced without data loss). This yields significant savings on the compute-heavy task tier without risking cluster stability. — Using all On-Demand instances is reliable but misses the cost optimization opportunity. — Using Reserved Instances for the master only while keeping core nodes On-Demand is better than all On-Demand, but task nodes (the largest tier) remain On-Demand, leaving major savings on the table. — Using Spot for master and core nodes risks cluster termination and HDFS data corruption if Spot capacity is reclaimed, which is not acceptable even for non-critical batch jobs.

5.

A startup is building a serverless REST API that handles sporadic, unpredictable traffic ranging from 0 to 50,000 requests per minute. The payload processing logic takes approximately 300 ms on average. The team wants to minimize operational overhead and optimize costs for low-traffic periods. Which compute option is MOST appropriate?

  • A. AWS Fargate tasks triggered by Amazon API Gateway using an HTTP integration.
  • B. Amazon EC2 Auto Scaling group with On-Demand instances behind an Application Load Balancer.
  • C. AWS Lambda functions integrated directly with Amazon API Gateway.✓ Correct
  • D. Amazon ECS on EC2 with Spot Instances and a target tracking scaling policy.
Explanation

AWS Lambda with API Gateway is purpose-built for sporadic, unpredictable workloads. Lambda scales automatically from zero to thousands of concurrent executions with no infrastructure management, and you pay only per invocation and duration — making it extremely cost-effective when traffic is low or zero. A 300 ms execution time is well within Lambda's capabilities. — EC2 Auto Scaling has a minimum instance requirement, so you pay for idle capacity during low-traffic periods; it also introduces operational overhead (patching, AMI management). — Fargate containers take seconds to start (cold starts), are not as cost-effective at near-zero traffic, and require more orchestration setup than Lambda for a simple REST API. — ECS on EC2 with Spot Instances adds complexity (instance management, Spot interruption handling) and doesn't scale to zero, making it less cost-efficient for sporadic traffic.

Test yourself across every SAA-C03 domain

The free SAA-C03 practice test mixes about 20 questions weighted like the exam. The full 250-question bank adds instant grading, flashcards and a timed mock exam.

Study this domain

Design High-Performing Architectures study guide (SAA-C03) →

Other SAA-C03 domains

← All AWS Solutions Architect Associate study resources