TalksAWS re:Invent 2025 - Deep dive into Amazon Aurora DSQL and its architecture (DAT439)
AWS re:Invent 2025 - Deep dive into Amazon Aurora DSQL and its architecture (DAT439)
Deep Dive into Amazon Aurora DSQL Architecture
Overview of Amazon Aurora DSQL
Amazon Aurora DSQL is a distributed implementation of a relational database, built on top of PostgreSQL
It aims to bridge the worlds of relational databases and distributed databases, offering a fully serverless, scalable, and highly available database service
Key Components of DSQL Architecture
Query Processor (QP): Responsible for parsing, planning, and executing SQL queries
Receives SQL statements from applications and interprets them
Performs all DML operations ephemerally in memory until commit
Journal: Distributed transaction log that provides durability guarantees
Writes transactions to at least two Availability Zones in a single region
Replicates transactions to at least one other AWS region in a multi-region setup
Storage: Custom-built storage service that learns about committed transactions from the Journal and updates its local view
Consistency and Concurrency Control
DSQL provides strong consistency through a time-based synchronization protocol
Query Processors use the EC2 Time Sync service and AWS Clockbound to get linearizable timestamps
Storage implements multi-version concurrency control to return results for the requested timestamp
DSQL is active-active, allowing any Query Processor to update data
The Adjudicator service implements optimistic concurrency control to detect and resolve conflicts
Automatic Scaling and Availability
DSQL automatically scales reads by creating clones of Storage based on recent snapshots
It can also scale out the Journal layer through transparent sharding
DSQL is designed to be highly available, with the ability to survive the loss of an Availability Zone or even an entire AWS region
Connection Management in DSQL
DSQL provides a shared endpoint that any cluster can use, leveraging TLS Server Name Indication (SNI) to identify the target cluster
Connections are handled by a Relay service that authenticates and authorizes the client, then routes the connection to an available Query Processor
Each Query Processor runs in its own hardware-isolated microVM, providing strong security and isolation between connections
Connection Pooling and Placement
DSQL maintains a warm pool of pre-initialized Query Processors to enable fast connection establishment
Connections are assigned to a per-cluster connection pool, allowing DSQL to automatically scale out capacity as needed
The Placement service continuously monitors the fleet and intelligently assigns new connections to healthy Query Processors
Pricing and Cost Optimization
DSQL uses an activity-based pricing model, charging for compute (QP time), reads, and writes
There is no need to provision capacity or manage connection pools - DSQL scales automatically based on usage
Customers only pay for the resources they consume, with no idle costs when the application is not actively using the database
Key Takeaways
DSQL provides a highly secure, scalable, and available database service with a focus on simplicity for developers
The architecture leverages hardware-level isolation, distributed transaction management, and intelligent connection routing to deliver a seamless experience
DSQL's activity-based pricing model aligns costs with actual usage, making it easy to scale up or down without over-provisioning
These cookies are used to collect information about how you interact with this website and allow us to remember you. We use this information to improve and customize your browsing experience, as well as for analytics.
If you decline, your information won’t be tracked when you visit this website. A single cookie will be used in your browser to remember your preference.