A solutions architect is designing the database tier for an IoT fleet management application. The application receives real-time telemetry from vehicles. The data volume exhibits sudden, highly irregular spikes when vehicles enter high-connectivity zones, ranging from writes per second up to a peak of writes per second. The application requires sub-millisecond read latency for live dashboard queries, while write operations must have single-digit millisecond latency. The primary read query retrieves the latest status events for a specific vehicle. Which database architecture meets these requirements with the highest performance and scalability?
- ACreate an Amazon DynamoDB table using a rounded timestamp as the partition key and vehicle_id as the sort key. Configure the table with On-Demand capacity mode, and deploy a DynamoDB Accelerator (DAX) cluster to cache read queries.
- BCreate an Amazon DynamoDB table using vehicle_id as the partition key and timestamp as the sort key. Configure the table to use Provisioned Capacity Mode set to the peak of write capacity units (WCUs) to guarantee write performance during spikes, and cache reads using an Amazon ElastiCache for Memcached cluster.
- Create an Amazon DynamoDB table using vehicle_id as the partition key and timestamp as the sort key. Configure the table with On-Demand capacity mode, and deploy a DynamoDB Accelerator (DAX) cluster to handle read queries.Answer
- DDeploy an Amazon RDS for PostgreSQL database in a Multi-AZ deployment. Set up RDS Read Replicas to handle the read queries, and configure the application to target the Read Replicas as the primary disaster recovery failover mechanism to maintain high performance.
Answer
Create an Amazon DynamoDB table using vehicle_id as the partition key and timestamp as the sort key, configured in On-Demand capacity mode, with a DynamoDB Accelerator (DAX) cluster for caching reads.
The correct option provides the most performant and scalable solution. Partitioning by vehicle_id ensures a uniform distribution of write operations across physical partitions, avoiding the hot key issue. On-Demand capacity mode scales dynamically to handle sudden write spikes up to the peak of writes per second without requiring manual provisioning or incurring idle costs. DynamoDB Accelerator (DAX) delivers the required sub-millisecond read latency by caching queries directly in-memory.
Step-by-Step Solution
Key Concept
High-performing database scaling using partition key design, capacity mode selection, and caching integration on AWS.
Estimated Time:2m 0s