Study Guide885 words

Selecting the Appropriate AWS Database Platform: A Strategic Study Guide

Selecting the appropriate database platform

Selecting the Appropriate AWS Database Platform

This guide explores the critical decision-making process for choosing a database engine on AWS, focusing on the "purpose-built" philosophy required for the AWS Certified Solutions Architect - Professional (SAP-C02) exam.

Learning Objectives

By the end of this guide, you should be able to:

  • Identify the six primary database categories offered by AWS.
  • Differentiate between relational (RDS/Aurora) and non-relational (NoSQL) workloads.
  • Select the appropriate database based on specific access patterns, data structures, and scaling requirements.
  • Evaluate migration paths for legacy workloads using tools like Babelfish for Aurora PostgreSQL.

Key Terms & Glossary

  • Relational Database (RDBMS): A database that organizes data into tables with predefined schemas and formal relationships (e.g., SQL Server, MySQL).
  • NoSQL: "Not Only SQL"; databases designed for non-tabular data structures like documents, graphs, or key-value pairs, often providing higher scalability.
  • IOPS (Input/Output Operations Per Second): A performance metric used to measure the speed of database storage.
  • Schema-on-Write: Traditional relational approach where data must fit a predefined structure before being inserted.
  • Schema-on-Read: Non-relational approach where data is stored in its raw form (like JSON) and interpreted when queried.

The "Big Idea"

In modern cloud architecture, the "One Size Fits All" database approach is obsolete. Instead of forcing every data type into a relational table, AWS encourages Polyglot Persistence—matching the data structure to a purpose-built database engine. This shift optimizes for performance, scale, and cost, moving from monolithic SQL instances to distributed, specialized services.

Formula / Concept Box

Data PatternAccess RequirementRecommended AWS Service
Complex Joins / ACIDSQL / StructuredAmazon RDS or Amazon Aurora
High-speed Key-ValueMillisecond Latency / ServerlessAmazon DynamoDB
Hierarchical / JSONFlexible Document StructureAmazon DocumentDB
Highly Connected DataRelationship TraversalAmazon Neptune
Sub-millisecond ReadIn-memory SpeedAmazon ElastiCache
Text-based SearchFull-text Indexing / LogsAmazon OpenSearch Service

Hierarchical Outline

  • Relational Databases (Managed)
    • Amazon RDS: Managed service for SQL Server, Oracle, PostgreSQL, MySQL, and MariaDB. Best for replatforming without rearchitecting.
    • Amazon Aurora: Cloud-native relational database. High performance (5x MySQL, 3x PostgreSQL) and self-healing storage.
  • Non-Relational / NoSQL
    • Amazon DynamoDB: Key-value store. Scales horizontally to virtually any limit. Includes DAX for in-memory acceleration.
    • Amazon DocumentDB: Purpose-built for JSON. Fully compatible with MongoDB drivers and tools.
  • Specialized Engines
    • Amazon Neptune: Graph database for nodes and edges. Use for social networks and fraud detection.
    • Amazon ElastiCache: In-memory store (Redis/Memcached) for session management and caching.
    • Amazon OpenSearch: For searching large datasets and log analysis.

Visual Anchors

Database Selection Decision Tree

Loading Diagram...

Polyglot Persistence Architecture

\begin{tikzpicture}[node distance=2cm, every node/.style={draw, rectangle, rounded corners, align=center, fill=blue!5}] \node (app) {Application Layer}; \node (dy) [below left of=app, xshift=-1cm] {DynamoDB \ (User Profiles)}; \node (rd) [below of=app] {Aurora \ (Orders/Transactions)}; \node (ne) [below right of=app, xshift=1cm] {Neptune \ (Social Graph)};

code
\draw[->, thick] (app) -- (dy); \draw[->, thick] (app) -- (rd); \draw[->, thick] (app) -- (ne); \node[draw=none, fill=none, below of=rd, yshift=1cm] {\textit{Specialized data goes to specialized engines}};

\end{tikzpicture}

Definition-Example Pairs

  • Graph Database (Amazon Neptune): A database that uses graph structures for semantic queries with nodes, edges, and properties.
    • Real-World Example: A recommendation engine for an e-commerce site that suggests products based on what "friends of friends" also purchased.
  • In-Memory Cache (Amazon ElastiCache): A high-speed data storage layer which stores a subset of data in RAM.
    • Real-World Example: Storing a player's leaderboard in an online game to avoid hitting the main database every time a score updates.

Worked Examples

Problem 1: Migrating from SQL Server

Scenario: A company wants to migrate a legacy .NET application using SQL Server to AWS but wants to reduce licensing costs without rewriting the entire application code.

Step-by-Step Breakdown:

  1. Analyze Compatibility: Determine if the app can use an open-source engine.
  2. Selection: Choose Amazon Aurora PostgreSQL.
  3. Modernization Tool: Implement Babelfish for Aurora PostgreSQL. This allows the database to understand T-SQL (SQL Server's dialect), minimizing the changes needed in the application code.
  4. Result: Lower costs and managed scaling with minimal code effort.

Checkpoint Questions

  1. Which service would you choose for a web application that requires sub-millisecond response times for a global user base? (Answer: DynamoDB with Global Tables and DAX).
  2. How does Amazon DocumentDB facilitate migrations from on-premises MongoDB? (Answer: It is compatible with MongoDB v3.6/4.0 drivers and tools).
  3. When should you use Amazon RDS instead of Amazon Aurora? (Answer: When you require specific legacy database engines or versions not supported by Aurora, such as SQL Server or Oracle).

Muddy Points & Cross-Refs

[!NOTE] RDS vs. Aurora: Students often confuse these. Remember: RDS is "Managed Traditional DBs," while Aurora is "AWS-Reimagined Relational DB." If the exam mentions "Cloud Native" or "High Performance Relational," think Aurora.

[!TIP] ElastiCache vs. DAX: Use ElastiCache for general-purpose caching (RDS, S3, etc.). Use DAX (DynamoDB Accelerator) specifically and only for DynamoDB.

Comparison Tables

FeatureDynamoDBRDS (MySQL/Postgres)DocumentDB
ScalingHorizontal (Automatic)Vertical (Manual/Storage Auto)Horizontal (Read Replicas)
SchemaSchema-lessRigid / PredefinedFlexible (JSON)
Primary UseWeb/IoT/MobileERP/CRM/Traditional AppsContent Management
ConsistencyEventual (Default)StrongEventual/Strong

Ready to study AWS Certified Solutions Architect - Professional (SAP-C02)?

Practice tests, flashcards, and all study notes — free, no sign-up needed.

Start Studying — Free