Question

Difficulty: HardAWS Database Services

A financial services company is designing a new cloud application. The application requires two distinct data storage tiers: a highly available relational database that can scale automatically to handle transactional records, and a flexible, low-latency NoSQL database to store unstructured user preference metadata. Additionally, the company wants to minimize administrative overhead while adhering to AWS architectural best practices. Which TWO of the following services or deployment strategies should the company choose?

  1. Amazon Aurora to provide a fully managed, auto-scaling relational database engine.Answer
  2. Amazon DynamoDB to provide a fully managed, low-latency NoSQL database for the user preference metadata.Answer
  3. C
    A self-managed database deployed on Amazon EC2, relying on AWS to automatically manage operating system patching and software updates.
  4. D
    A single, consolidated Amazon EC2 instance running both the relational and NoSQL databases to ensure a tightly coupled design.
  5. E
    Amazon RDS for PostgreSQL to store the unstructured, high-throughput user preference metadata.

Answer

Amazon Aurora and Amazon DynamoDB are the correct database services for these requirements.
Amazon Aurora meets the requirement for a highly available, auto-scaling relational database for transactional data. Amazon DynamoDB satisfies the requirement for a low-latency, fully managed NoSQL database for unstructured user preference metadata.

Step-by-Step Solution

1
Analyze the requirement for a highly available relational database for transactional records.
Identify Amazon Aurora as the optimal service.
Amazon Aurora is a fully managed relational database engine that offers auto-scaling, high availability, and performance suitable for transaction processing while reducing administrative overhead.
2
Analyze the requirement for a low-latency NoSQL database for unstructured metadata.
Identify Amazon DynamoDB as the optimal service.
Amazon DynamoDB is a fully managed NoSQL database designed for single-digit millisecond latency and flexible schemas, perfect for unstructured metadata.
3
Evaluate the remaining options against the goal of minimizing administrative overhead and following AWS design principles.
Eliminate self-managed EC2 options and monolithic designs.
Deploying databases on EC2 increases administrative overhead due to manual OS patching (Shared Responsibility Model), and hosting multiple database types on a single instance violates the loose coupling principle.

Key Concept

Selecting managed database services based on data model requirements (relational vs. NoSQL) and adhering to the AWS Shared Responsibility Model and loose coupling principles.
Rate this question