A smart utility provider is designing a new serverless telemetry platform to ingest power consumption data from smart meters. Each meter transmits a JSON payload every seconds. During grid emergency events, the system must support flash traffic where meters transmit data every second. The application must process the incoming telemetry in near-real-time to detect anomalies, store the data for long-term historical analytics, and support a high-volume dashboard that queries the latest meter status with sub-second latency. Which combination of architectural decisions should a Solutions Architect recommend to achieve optimal performance and scalability? (Select TWO.)
- Ingest telemetry data using Amazon Kinesis Data Streams, and configure AWS Lambda with a Parallelization Factor to process the records and write them to an Amazon DynamoDB table.Answer
- Deploy an Amazon Aurora PostgreSQL database with Aurora Replicas, configure Aurora Auto Scaling to dynamically scale the replicas based on CPU utilization, and route dashboard queries to the reader endpoint.Answer
- CIngest telemetry data using an Application Load Balancer (ALB) and an Auto Scaling group of Amazon ECS tasks, relying solely on default ALB target tracking scaling policies to handle the sudden transition to -second transmission intervals.
- DScale the dashboard query performance during peak loads by deploying an Amazon RDS for PostgreSQL database in a Multi-AZ configuration, and configure the application to send read queries to the passive standby instance in the secondary Availability Zone.
- ECache the latest meter statuses and session tokens using an Amazon ElastiCache for Memcached cluster, configuring multi-region replication and data persistence to prevent cache loss during failovers.
Answer
The optimal scalable design uses Amazon Kinesis Data Streams, AWS Lambda with Parallelization Factor, and Amazon DynamoDB for ingestion, and Amazon Aurora PostgreSQL with reader Auto Scaling and Aurora Replicas for scaling read queries.
Using Amazon Kinesis Data Streams ensures the system can absorb large streams of telemetry data. Processing with AWS Lambda using a Parallelization Factor allows faster stream consumption by running multiple Lambda invocations concurrently for each shard, which accelerates writing to Amazon DynamoDB. To scale database reads, Amazon Aurora PostgreSQL read replicas scale out automatically and are load-balanced via the reader endpoint to handle high-frequency dashboard queries.
Step-by-Step Solution
Key Concept
Decoupling ingestion and scaling read capacity independently are core design strategies for high-performance and high-scalability workloads on AWS.
Estimated Time:3m 0s