Key Takeaways
Amazon Aurora Overview
- Amazon Aurora is a cloud-native, purpose-built database that is fully compatible with MySQL and PostgreSQL
- It offers great performance, scalability, availability, durability, and security while being fully managed
Aurora Architecture
- Aurora uses a distributed, shared-storage architecture where the storage layer is decoupled from the compute layer
- Data is written as log records across multiple storage servers in different availability zones for durability
- Reads are typically served from the closest local copy to minimize latency
- Aurora supports up to 15 read-only nodes with flexible instance types and serverless options
- Automatic failover to a read-only node in another AZ is provided for high availability
Key Features
- Local Write Forwarding: Allows read-only nodes to accept writes and forward them to the read/write node
- Global Databases: Provides multi-region disaster recovery with asynchronous replication and automatic failover
- Global Endpoints: Simplifies the application's handling of failovers by using a global endpoint that transparently routes to the current primary region
- Zero-ETL Integration: Enables real-time data replication from Aurora to Amazon Redshift for analytics
Performance Improvements
- Aurora has introduced IO-Optimized storage and enhancements to the PostgreSQL storage layer to improve write performance and lower latency
- Newer instance types like R7i and R8g have shown significant performance improvements over previous generations
Serverless V2
- Aurora Serverless V2 provides automatic, in-place scaling of CPU and memory based on demand
- It includes features like buffer pool resizing and scale-to-zero to optimize cost and performance
Blue-Green Deployments
- Aurora supports automated blue-green deployments for major version upgrades to minimize downtime
Aurora DSQL
- Aurora DSQL is a new disaggregated, multi-writer version of Aurora with some differences from Aurora Postgres:
- Not fully Postgres compatible, uses optimistic concurrency control instead of locking
- Reads directly from storage without caching, but with optimized read performance
- Truly active-active multi-region support with synchronous commits
Overall, Amazon Aurora continues to evolve and introduce new capabilities to meet the needs of modern, cloud-native workloads while maintaining its focus on performance, availability, and manageability.