Database.Advanced.Explain the architecture of Amazon Aurora.

Amazon Aurora is a high-performance, cloud-native relational database engine built by AWS, compatible with both MySQL and PostgreSQL. It’s designed to overcome the limitations of traditional databases by decoupling storage and compute, offering high availability, performance, and scalability.

+-----------------+           +-----------------+
|  App Clients    |  <----->  |  Aurora Compute |
+-----------------+           |   (DB Instance) |
                              +-----------------+
                                       |
                                       v
                         +------------------------------+
                         |    Aurora Distributed Storage |
                         |   (6 copies across 3 AZs)      |
                         +------------------------------+

🧱 Core Architectural Components

1. 🧠 Aurora Compute Layer (DB Instance)

  • Compatible with MySQL or PostgreSQL
  • Handles:
    • Query parsing and optimization
    • Transaction management
    • Caching and buffer pool
  • Stateless: does not persist data directly to disk

2. 💾 Aurora Storage Layer (Distributed Storage Engine)

  • Fully managed, distributed, and fault-tolerant
  • Each volume is replicated 6 times across 3 Availability Zones
  • Storage is log-structured and append-only:
    • Changes (redo logs) are sent to storage nodes
    • Storage layer performs crash recovery

3. ⚖️ Separation of Compute and Storage

  • You can scale compute independently from storage
  • Auto-scaling read replicas (up to 15)
  • Failover is fast (typically under 30 seconds)

🔁 Replication and High Availability

6-Way Replication

  • Every write is sent to 6 storage nodes across 3 AZs
  • Only needs 4 of 6 nodes to acknowledge a write
  • Tolerates AZ failures without downtime

Aurora Replica Types

TypeRoleFailover Eligible
Primary instanceHandles writes & reads✅ Yes
Aurora ReplicasRead-only, low-latency reads✅ Yes
Reader endpointLoad-balanced read traffic

⚡ Performance Features

  • Up to 5x faster than MySQL and 3x faster than PostgreSQL (per AWS)
  • Uses quorum-based write acknowledgement (4/6) to reduce latency
  • Advanced features:
    • Parallel query execution
    • Aurora Serverless (v1 and v2) for auto-scaling

🔐 Durability & Recovery

  • Redo log shipping instead of traditional WAL/transaction logs
  • Instant crash recovery — no need to replay logs on reboot
  • Continuous backups to Amazon S3 (no performance impact)

📦 Aurora Serverless (v2)

  • Scales compute capacity on demand in fine-grained increments
  • You only pay per second for actual usage
  • Ideal for unpredictable workloads

📊 Monitoring and Security

  • Integrated with CloudWatch, RDS Performance Insights, IAM, VPC, KMS
  • Supports encryption at rest and in transit

✅ Summary

FeatureAurora Implementation
StorageLog-structured, replicated 6x across 3 AZs
ComputeStateless DB instances; can scale reads separately
PerformanceParallel query, quorum writes, high throughput
High AvailabilityFast failover, storage self-healing
Backup & RecoveryContinuous snapshots to S3, fast crash recovery
ReplicationAurora replicas with sub-10ms lag
CompatibilityMySQL 5.7/8.0, PostgreSQL 13+
This entry was posted in Без рубрики. Bookmark the permalink.