AWS Certified Solutions Architect – Associate (SAA-C03)Design Resilient ArchitecturesMedium
A company is developing a machine learning application that requires a highly scalable and low-latency data store for frequently accessed metadata and feature vectors. The data needs to be accessed by multiple AWS Lambda functions and Amazon EC2 instances. The application needs sub-millisecond response times for both reads and writes. Which AWS service is best suited for this purpose?
- AAmazon DynamoDB with DAX.
- BAmazon RDS for PostgreSQL with read replicas.
- CAmazon ElastiCache for Redis.
- DAmazon S3 with S3 Intelligent-Tiering.
Show answer & explanationAnswer & explanation
Correct answer: C. Amazon ElastiCache for Redis.
Amazon ElastiCache for Redis is an in-memory data store known for its extremely low-latency (sub-millisecond) read and write performance, high throughput, and scalability. It's ideal for caching, session management, and real-time analytics, perfectly suiting the need for frequently accessed metadata and feature vectors for ML applications.
Why the other options are wrong
- A. DynamoDB with DAX provides sub-millisecond reads but DAX itself is a read-through cache. DynamoDB's native write latency is typically higher than an in-memory store for high-volume, low-latency writes, and DAX doesn't accelerate writes.
- B. RDS (relational databases) typically has higher latency compared to in-memory stores and is not designed for the sub-millisecond read/write performance required for this use case, especially at scale for feature vectors.
- D. S3 is object storage, designed for durability and cost-effectiveness, not for sub-millisecond, high-throughput database-like access for metadata and feature vectors.
ElastiCache for Redis
A fully managed in-memory data store service compatible with Redis, providing sub-millisecond latency and high throughput for real-time applications.
- Supports various data structures (strings, hashes, lists, sets, sorted sets).
- Ideal for caching, session stores, leaderboards, and real-time analytics.
- Offers high availability with replication groups and automatic failover.
Memory trick: ElastiCache Redis is the lightning-fast brain for your app's data.