DVA-C02 Development with AWS Services Practice Question
A developer is designing a microservices architecture using Amazon ECS with Fargate. The application needs to store and retrieve user session data. Which TWO AWS services can be used to store session state?
⚠ Common exam trap
The exam frequently tests your ability to choose the most performant and scalable options for session state. While you *can* technically store session data in RDS or S3, they are not optimized for the high-frequency, low-latency read/write patterns of session state. DynamoDB and ElastiCache are the standard AWS best-practice recommendations for this use case.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Amazon DynamoDB
Amazon DynamoDB (A) is correct because it is a fully managed, low-latency key-value NoSQL database that is commonly used to store session state for microservices, allowing fast reads/writes keyed by session ID with automatic scaling and TTL-based expiration. Amazon ElastiCache for Redis (B) is also correct because Redis is an in-memory data store with sub-millisecond latency and native support for data structures and key expiration, making it a standard choice for session caching and storage in containerized ECS/Fargate architectures. Amazon S3 (C) is not suitable because it is object storage with higher latency and eventual consistency characteristics, not designed for frequent small session reads/writes. Amazon EFS (D) is a shared file system for POSIX workloads and is not intended as a low-latency session state store. Amazon RDS for MySQL (E) is a relational database that can technically store sessions, but it is not the typical high-throughput, low-latency session store for microservices and is not marked correct here.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Amazon DynamoDB
Why this is correct
Amazon DynamoDB is a fully managed, serverless NoSQL database service offering single-digit millisecond performance at any scale. Its key-value data model is exceptionally well-suited for storing session state, where a session ID serves as the primary key for rapid retrieval and updates of associated user data. This low-latency, highly available, and scalable nature ensures a consistent and responsive user experience across distributed microservices without operational overhead.
- ✓
Amazon ElastiCache for Redis
Why this is correct
Amazon ElastiCache for Redis provides an extremely fast, in-memory data store ideal for caching and session management. Its sub-millisecond latency and high throughput enable microservices to quickly store and retrieve volatile session data, significantly reducing the load on primary databases and improving application responsiveness. Redis supports various data structures, making it flexible for complex session attributes while offering high availability and automatic failover capabilities.
- ✗
Amazon S3
Why it's wrong here
Amazon S3 is an object storage service designed for durable, highly available storage of large, static objects, not for dynamic, low-latency session state. Its eventual consistency model for reads after writes and the overhead of HTTP-based object retrieval introduce significant latency unsuitable for the rapid, frequent access required by interactive user sessions. S3 lacks the performance characteristics and API for efficient session management in a microservices architecture.
- ✗
Amazon EFS
Why it's wrong here
Amazon EFS offers a scalable, shared file system primarily for Linux-based EC2 instances, providing file-level access. While it can store data, its design and performance characteristics are not optimized for the high-frequency, low-latency read/write operations typical of session state management. Using EFS for session data would introduce unnecessary latency and complexity compared to specialized database or caching solutions, as it's not designed for direct integration with microservices for this purpose.
- ✗
Amazon RDS for MySQL
Why it's wrong here
Amazon RDS for MySQL is a relational database service optimized for complex queries, transactional integrity, and structured data, not for simple key-value lookups of volatile session data. The overhead associated with SQL parsing, connection management, and disk-based storage makes it less efficient and more resource-intensive for high-volume session management compared to purpose-built NoSQL or in-memory solutions. It would introduce unnecessary latency and operational complexity for this specific use case.
Quick reference
AWS S3 Storage Class Comparison
| Storage Class | Min Duration | Retrieval | Use Case |
|---|---|---|---|
| S3 Standard | None | Immediate | Frequently accessed data |
| S3 Standard-IA | 30 days | Immediate | Infrequent access, rapid retrieval |
| S3 One Zone-IA | 30 days | Immediate | Non-critical infrequent data |
| S3 Intelligent-Tiering | None | Immediate–hours | Unknown or changing access patterns |
| S3 Glacier Instant | 90 days | Milliseconds | Archive with instant retrieval |
| S3 Glacier Flexible | 90 days | Minutes–hours | Archive, flexible retrieval |
| S3 Glacier Deep Archive | 180 days | Hours | Long-term compliance archive |
Go deeper
Related to this question
About these practice questions
Courseiva writes every DVA-C02 question from scratch — 1,135 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DVA-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DVA-C02 exam.