Database engines with appropriate use cases (for example, heterogeneous migrations, homogeneous migrations)

Task Statement 4.3: Design cost-optimized database solutions.

📘AWS Certified Solutions Architect – (SAA-C03)


1. What is a Database Engine?

A database engine is the core software that stores, manages, and retrieves data.

In AWS, different engines are designed for different types of workloads.


2. Types of Database Engines in AWS

2.1 Relational Database Engines (SQL-based)

These use structured schemas (tables, rows, columns).

Supported Engines:

  • MySQL
  • PostgreSQL
  • MariaDB
  • Oracle
  • Microsoft SQL Server
  • Amazon Aurora

AWS Services:

  • Amazon RDS
  • Amazon Aurora

Key Features:

  • Structured data
  • ACID compliance (high consistency)
  • SQL query support

Use Cases (IT-focused):

  • Applications with structured data models
  • Systems requiring transactions (e.g., inserting/updating multiple records reliably)
  • Applications using predefined schemas

2.2 NoSQL Database Engines

These do not require fixed schemas.

Types:

  • Key-value (Amazon DynamoDB)
  • Document (JSON-based)
  • Wide-column
  • Graph

AWS Services:

  • Amazon DynamoDB
  • Amazon DocumentDB (MongoDB-compatible)
  • Amazon Keyspaces (Apache Cassandra)

Key Features:

  • Flexible schema
  • High scalability
  • Low latency

Use Cases:

  • Applications with rapidly changing data structure
  • High-throughput workloads
  • Distributed applications

2.3 In-Memory Database Engines

Store data in memory for ultra-fast performance.

AWS Services:

  • Amazon ElastiCache (Redis, Memcached)
  • Amazon MemoryDB for Redis

Key Features:

  • Microsecond latency
  • High-speed data access

Use Cases:

  • Caching frequently accessed data
  • Session storage
  • Real-time processing

2.4 Data Warehouse Engines

Used for analytics and reporting.

AWS Service:

  • Amazon Redshift

Key Features:

  • Columnar storage
  • Optimized for large queries

Use Cases:

  • Business intelligence queries
  • Large-scale reporting systems

2.5 Graph Database Engines

Used for relationships between data.

AWS Service:

  • Amazon Neptune

Key Features:

  • Relationship-focused queries
  • Graph traversal

Use Cases:

  • Applications analyzing relationships between entities

2.6 Time-Series Database Engines

Optimized for time-based data.

AWS Service:

  • Amazon Timestream

Use Cases:

  • Metrics, logs, monitoring systems

3. Choosing the Right Database Engine (Exam Focus)

You must select based on:

3.1 Data Structure

  • Structured → Relational (RDS, Aurora)
  • Semi-structured → DocumentDB
  • Key-value → DynamoDB

3.2 Performance Needs

  • Low latency → DynamoDB / ElastiCache
  • High throughput → DynamoDB
  • Complex queries → RDS / Aurora

3.3 Scalability

  • Automatic scaling → DynamoDB
  • Manual scaling → RDS (mostly)

3.4 Cost Optimization

  • Serverless → Aurora Serverless, DynamoDB on-demand
  • Reserved instances → RDS, Redshift
  • Pay-per-request → DynamoDB

4. Database Migration Types (Very Important)

Migration means moving a database from one engine to another.


4.1 Homogeneous Migration

Definition:

Source and target database engines are the same type.

Example (IT-focused):

  • MySQL → Amazon RDS MySQL
  • PostgreSQL → Amazon Aurora PostgreSQL

Characteristics:

  • Same database engine
  • Minimal changes required
  • Faster and simpler migration

AWS Tools:

  • AWS Database Migration Service (DMS)

Advantages:

  • Low risk
  • Lower cost
  • Faster execution

Exam Tip:

👉 Always prefer homogeneous migration if possible (simpler and cheaper).


4.2 Heterogeneous Migration

Definition:

Source and target database engines are different types.

Example (IT-focused):

  • Oracle → Amazon Aurora MySQL
  • SQL Server → PostgreSQL

Characteristics:

  • Different database engines
  • Requires schema conversion
  • More complex

AWS Tools:

  • AWS DMS (for data movement)
  • AWS Schema Conversion Tool (SCT) (for schema conversion)

Challenges:

  • Data type differences
  • Query syntax differences
  • Application changes required

Advantages:

  • Can reduce licensing cost
  • Move to open-source engines

Exam Tip:

👉 Heterogeneous migration is used when:

  • Reducing cost (e.g., moving from commercial DB to open-source)
  • Modernizing applications

5. AWS Migration Tools (Exam Critical)

5.1 AWS Database Migration Service (DMS)

  • Moves data between databases
  • Supports both homogeneous and heterogeneous migrations
  • Minimal downtime

5.2 AWS Schema Conversion Tool (SCT)

  • Converts database schema
  • Used only for heterogeneous migration

6. Cost Optimization Considerations

When selecting database engines:

6.1 Licensing Costs

  • Open-source engines (MySQL, PostgreSQL) → cheaper
  • Commercial engines (Oracle, SQL Server) → expensive

6.2 Scaling Costs

  • DynamoDB → pay-per-request
  • RDS → fixed instance cost

6.3 Storage Costs

  • Redshift → optimized for analytics storage
  • DynamoDB → pay for throughput + storage

6.4 Migration Cost

  • Homogeneous → low cost
  • Heterogeneous → higher cost due to complexity

7. Key Exam Tips (Must Remember)

  • Relational DB → structured + ACID
  • DynamoDB → serverless + scalable + key-value
  • ElastiCache → caching only
  • Redshift → analytics (NOT transactional)
  • Neptune → relationships
  • Timestream → time-series data

Migration Tips:

  • Same engine → Homogeneous
  • Different engine → Heterogeneous
  • Use DMS for data movement
  • Use SCT for schema conversion

8. Quick Comparison Table

FeatureHomogeneousHeterogeneous
Engine TypeSameDifferent
ComplexityLowHigh
CostLowerHigher
ToolsDMSDMS + SCT
RiskLowHigher

Final Summary

  • Choose database engine based on data type, performance, scalability, and cost
  • Understand all AWS database engines and their use cases
  • Know the difference between:
    • Homogeneous migration → same engine, simple
    • Heterogeneous migration → different engine, complex
  • Learn AWS tools:
    • DMS → data migration
    • SCT → schema conversion
Buy Me a Coffee