Question

Difficulty: MediumPerformance and Scalability Optimization

A regional utility company is launching a smart grid monitoring application that ingests telemetry data from 500,000500,000 smart meters. Each meter uploads consumption data every 1515 minutes. During extreme weather events, the application experiences immediate, unannounced traffic spikes that increase the ingestion rate tenfold. The ingestion layer must scale instantly to prevent data loss, and the database must support low-latency write operations. Which two strategies should the Solutions Architect implement to optimize the performance and scalability of this solution?

  1. Deploy a Network Load Balancer (NLB) to distribute the incoming traffic, as it can handle sudden, massive spikes in throughput without requiring pre-warming.Answer
  2. Use Amazon DynamoDB with on-demand capacity mode and a partition key based on the meter ID to accommodate sudden spikes in write traffic.Answer
  3. C
    Deploy an Application Load Balancer (ALB) to distribute the incoming traffic, relying on its default auto-scaling behavior to absorb the sudden tenfold spike without administrative intervention.
  4. D
    Use an Amazon RDS Multi-AZ DB instance for storage, and configure the application to route read queries to the standby DB instance to reduce the load on the primary writer during traffic spikes.
  5. E
    Deploy Amazon ElastiCache for Memcached as a caching layer to cache meter session states and configure multi-AZ replication to ensure session persistence during failovers.

Answer

Deploy a Network Load Balancer (NLB) to handle the sudden traffic spikes and store the processed telemetry data in Amazon DynamoDB using on-demand capacity mode.
Deploying a Network Load Balancer ensures that sudden, unannounced spikes in traffic can be absorbed without dropped connections, as NLBs are designed to handle millions of requests per second instantly without pre-warming. Using Amazon DynamoDB in on-demand capacity mode with a highly distributed partition key like the meter ID ensures the database tier can handle unpredictable write scaling requirements without performance degradation or partition throttling.

Step-by-Step Solution

1
Evaluate load balancer scaling behavior for instantaneous, unannounced traffic spikes.
Identify that a Network Load Balancer (NLB) is required because it handles sudden spikes without needing pre-warming, unlike an Application Load Balancer (ALB).
An ALB scales gradually and would drop requests during a sudden tenfold spike if not pre-warmed.
2
Select a database configuration that handles high-throughput, unpredictable write workloads.
Choose Amazon DynamoDB with on-demand capacity mode and a partition key based on the meter ID.
On-demand capacity mode scales write capacity instantly, and a distributed partition key prevents hot partitions.
3
Identify why alternate architectural options are sub-optimal or incorrect.
Reject standard RDS Multi-AZ standby routing (as standbys do not serve traffic) and ElastiCache for Memcached (as it lacks replication/persistence).
Standby instances in standard RDS are passive, and Memcached does not support multi-AZ replication.

Key Concept

Selecting load balancer and database tiers that scale instantly to absorb unannounced write spikes.
Estimated Time:2m 0s
Rate this question