Question of the Day

A fresh AWS Certified Cloud Practitioner question every day — build the habit.

A company is building a web application that needs a relational database to store transactional order data with schema enforcement. To improve performance during peak traffic, they want to add an in-memory caching layer for frequently accessed catalog data. Which two decisions should the company make to implement this database tier? (Select TWO.)

  1. Use Amazon RDS to run the relational database.Answer
  2. Use Amazon ElastiCache to host the in-memory cache.Answer
  3. C
    Use Amazon DynamoDB to manage the relational transactional data.
  4. D
    Deploy both the database and the cache on a single Amazon EC2 instance to simplify the architecture.
  5. E
    Expect AWS to write and optimize the SQL queries for the database engine.

Answer

To implement this database tier, the company should use Amazon RDS for the relational database and Amazon ElastiCache for the in-memory cache.
Using Amazon RDS is correct because it is a managed relational database service that handles standard transactional SQL workloads. Using Amazon ElastiCache is correct because it provides a fully managed, in-memory caching layer to speed up read access for database-backed web applications.

Step-by-Step Solution

1
Analyze database requirements
Relational database needed for transactional order data and schema enforcement.
Relational databases are structured and support ACID-compliant transactional queries.
2
Analyze caching requirements
In-memory caching layer needed to reduce read latency for catalog data.
Caching speeds up reads for frequently accessed, slow-moving data.
3
Map requirements to AWS services
Choose Amazon RDS for the relational database and Amazon ElastiCache for the caching tier.
Amazon RDS provides managed relational engines (like MySQL or PostgreSQL), while Amazon ElastiCache provides managed Redis or Memcached engines.

Key Concept

AWS Database Services Selection and Design Principles