What should the Administrator do to reduce the application latency?
Move the product table to Amazon Redshift and use an interleaved sort key
Add Aurora Replicas and use a Reader Endpoint for product table lookups
Move the product table to Amazon CloudFront and set the cache-control headers to public
Use Auto Scaling to add extra Aurora nodes and set a trigger based on CPU utilization
Explanations:
Moving the product table to Amazon Redshift is not an ideal solution for a read-heavy application that needs low-latency access. Redshift is more suited for complex analytical queries and large-scale data warehousing rather than transactional lookups.
Adding Aurora Replicas and using a Reader Endpoint for product table lookups helps offload read-heavy traffic from the primary instance. Aurora Replicas handle read requests, reducing CPU load on the primary instance, which addresses the issue of high CPU utilization.
Using Amazon CloudFront is primarily for caching static content and is not suited for database table lookups. The product table lookups are dynamic and require database access, so caching through CloudFront won’t effectively address the latency or high CPU utilization.
Auto Scaling for Aurora nodes based on CPU utilization is not an optimal solution for reducing application latency. Aurora already has automatic scaling capabilities for storage, but adding more nodes based solely on CPU utilization may not resolve the underlying performance bottleneck caused by read-heavy queries.