Amazon Aurora DSQL
Amazon Aurora DSQL is a serverless, distributed SQL database launched by AWS in general availability on May 27, 2025.
Publisher review
Amazon Aurora DSQL is a serverless, distributed SQL database launched by AWS in general availability on May 27, 2025. It positions itself as a middle ground between DynamoDB's schema flexibility and traditional PostgreSQL's relational completeness, offering active-active multi-Region deployment with PostgreSQL wire-protocol compatibility. The service uses a disaggregated architecture—query processor, adjudicator, journal, and storage components scale independently—enabling low-latency multi-Region writes with strong consistency.
Single-Region clusters guarantee 99.99% uptime; multi-Region clusters reach 99.999%. Unlike traditional distributed SQL databases, DSQL enforces optimistic concurrency control, meaning applications must implement retry logic for conflicting transactions. This trade-off eliminates deadlock concerns but requires architectural change from pessimistic locking models.
Regional coverage includes US East, US West, Asia Pacific (Osaka, Tokyo, Seoul), and Europe (Ireland, London, Paris, Frankfurt), but cross-continent multi-Region clusters remain unsupported. The service attracted early adopters including Robinhood, ADP, and DeNA. However, a 10,000-row transaction limit, 10 MB transaction size cap, and missing PostgreSQL features—foreign keys, views, JSON types, custom extensions, and temporary tables—impose architectural constraints incompatible with legacy PostgreSQL migrations or batch-heavy ETL workloads.
TEXT fields cap at 1 MB versus PostgreSQL's 1 GB. IAM-only authentication eliminates traditional password-based access, creating operational overhead in role-assumption workflows. Cost model uses Distributed Processing Units (DPUs) at $0.33 per DPU-hour for compute, read, write, and streaming activity, plus $0.33 per GB-month for storage.
How it works
-
Serverless scaling with disaggregated architecture
Query processor, adjudicator, journal, and storage scale independently, avoiding the node-count constraint that forces Spanner users to over-provision entire instances.
-
PostgreSQL 16 wire compatibility
Applications connect via standard PostgreSQL drivers and tools (psql, pgAdmin), but support covers a PostgreSQL subset—no extensions, foreign keys, views, or JSON types.
-
Active-active multi-Region strong consistency
All reads and writes see the same committed data across Regions simultaneously using AWS Time Sync, without eventual-consistency windows or read-after-write loops.
-
Optimistic concurrency control with automatic retries
Transactions validate at commit time rather than acquiring locks upfront, eliminating deadlocks but requiring application-level conflict resolution and exponential backoff.
-
IAM-native authentication and AWS integration
Single sign-on via AWS IAM roles, eliminating password management; integrates with AWS Backup, CloudFormation, CloudTrail, and PrivateLink for compliance-driven deployments.
-
Free tier with 100,000 monthly DPUs
First 100,000 DPUs and 1 GB storage per month cost nothing, suitable for development environments and low-traffic applications without per-minute billing surprises.
-
Multi-AZ automatic failover within single Region
Infrastructure failures trigger transparent rerouting across three Availability Zones with zero manual intervention or connection reset—reads never block during AZ-level outages.
Strengths and trade-offs
Strengths
- Disaggregated architecture enables independent scaling of reads, writes, storage, and compute—true multi-dimensional scaling unmatched by single-node designs.
- Operates as true serverless with zero infrastructure provisioning, patching, or failover management—set-and-forget operational model for distributed SQL.
- PostgreSQL wire protocol compatibility allows standard drivers and tooling to work immediately, lowering learning curve compared to Spanner's custom SQL dialect.
Trade-offs
- 10,000-row transaction limit and 10 MB transaction ceiling make batch operations, ETL workflows, and data migrations unviable without architectural refactoring.
- Missing critical PostgreSQL features—foreign keys, views, JSON/JSONB, custom extensions, temporary tables, and serializable isolation—block legacy application migrations and force application-level constraint enforcement.
- AWS-exclusive service with no on-premises or cross-cloud deployment option; IAM-only authentication eliminates password-based access, creating operational friction for multi-tenant or heterogeneous environments.
Pricing context
Aurora DSQL uses a pay-as-you-go usage-based model. Billing combines Distributed Processing Units (DPUs) at $0.33 per DPU-hour for all activity (compute, read, write, streaming, multi-Region replication) and storage at $0.33 per GB-month. The free tier provides 100,000 DPUs and 1 GB storage monthly.
Within a Region, inter-AZ replication is free; cross-Region replication incurs DPU charges in the originating Region but no separate data-transfer fee. Data transferred to the internet follows standard AWS rates with 100 GB free under the AWS Free Tier. Multi-Region storage charges apply per Region. The model contrasts with reserved-capacity options available on Spanner and traditional Aurora PostgreSQL, making DSQL cost-effective for unpredictable or bursty workloads but potentially expensive for constant, predictable throughput.
Getting started with Amazon Aurora DSQL
-
Sign up for AWS account
Navigate to the AWS Management Console and create an account if you don't have one. Provide billing information and verify your email. This account gives you access to Aurora DSQL and the free tier of 100,000 DPUs and 1 GB storage monthly.
-
Create an Aurora DSQL cluster
Open the Amazon RDS console, select Aurora DSQL, and click Create cluster. Choose a single-Region or multi-Region configuration. Specify the cluster name and select the AWS Region. The service provisions serverlessly without requiring instance sizing.
-
Configure IAM authentication
Set up an IAM role with permissions to access the Aurora DSQL cluster. Attach the necessary policy that allows dsql:ExecuteStatement and dsql:GetStatementResult actions. Use this role to authenticate your application, as DSQL does not support password-based access.
-
Connect using PostgreSQL driver
Use a standard PostgreSQL client like psql or pgAdmin to connect to the cluster endpoint. Provide the IAM credentials through the AWS CLI or SDK. Run a test query such as SELECT 1; to verify the connection and confirm PostgreSQL 16 wire compatibility.
-
Implement retry logic for transactions
Write your application code to handle transaction conflicts by catching serialization errors. Use exponential backoff to retry failed transactions. This step is essential because DSQL uses optimistic concurrency control, which requires application-level conflict resolution.
Frequently Asked Questions
What is Amazon Aurora DSQL?
Amazon Aurora DSQL is a serverless, distributed SQL database launched by AWS in May 2025. It offers active-active multi-Region deployment with PostgreSQL wire-protocol compatibility, using a disaggregated architecture where query processing, storage, and other components scale independently for low-latency writes.
How does Aurora DSQL pricing work?
Aurora DSQL uses a pay-as-you-go model with Distributed Processing Units (DPUs) at $0.33 per DPU-hour for all activity, plus storage at $0.33 per GB-month. A free tier provides 100,000 DPUs and 1 GB storage monthly. Cross-Region replication incurs DPU charges in the originating Region.
What are the main limitations of Aurora DSQL?
Aurora DSQL has a 10,000-row transaction limit and 10 MB transaction size cap. It lacks foreign keys, views, JSON types, custom extensions, and temporary tables. TEXT fields are limited to 1 MB. IAM-only authentication eliminates password-based access, and only two active Regions are supported.
Is Aurora DSQL compatible with PostgreSQL?
Aurora DSQL offers PostgreSQL 16 wire protocol compatibility, allowing standard drivers and tools like psql to connect. However, it supports only a subset of PostgreSQL features, missing foreign keys, views, JSON/JSONB, custom extensions, and temporary tables, making legacy migrations challenging.
How does Aurora DSQL handle multi-Region consistency?
Aurora DSQL provides active-active multi-Region deployment with strong consistency across all Regions using AWS Time Sync. All reads and writes see the same committed data simultaneously, without eventual-consistency windows or read-after-write loops, achieving 99.999% uptime for multi-Region clusters.
What are the best alternatives to Aurora DSQL?
Alternatives to Aurora DSQL include Google AlloyDB, CockroachDB, DynamoDB, standard PostgreSQL, and Spanner. Each offers different trade-offs in terms of PostgreSQL compatibility, global deployment, and pricing models, depending on workload requirements and architectural preferences.
Alternatives
How Amazon Aurora DSQL compares
Direct head-to-head against 3 competitors. Picked by 7wData.
Amazon Aurora DSQL
- Pricing
- Aurora DSQL uses a pay-as-you-go usage-based model. Billing combines Distributed Processing Units (DPUs) at $0.33 per DPU-hour for all activity (compute, read, write, streaming, multi-Region replication) and storage at $0.33 per GB-month. The free tier provides 100,000 DPUs and 1 GB storage monthly. Within a Region, inter-AZ replication is free; cross-Region replication incurs DPU charges in the originating Region but no separate data-transfer fee. Data transferred to the internet follows standard AWS rates with 100 GB free under the AWS Free Tier. Multi-Region storage charges apply per Region. The model contrasts with reserved-capacity options available on Spanner and traditional Aurora PostgreSQL, making DSQL cost-effective for unpredictable or bursty workloads but potentially expensive for constant, predictable throughput.
- Target
- Amazon Aurora DSQL is a serverless, distributed SQL database launched by AWS in general availability on May 27, 2025.
- Strength
- Disaggregated architecture enables independent scaling of reads, writes, storage, and compute—true multi-dimensional scaling unmatched by single-node designs.
- Watch for
- 10,000-row transaction limit and 10 MB transaction ceiling make batch operations, ETL workflows, and data migrations unviable without architectural refactoring.
CockroachDB
- Pricing
- Free tier; paid from $0.50/hr/serverless; enterprise custom.
- Target
- Global, multi-cloud apps needing strong consistency and PostgreSQL compatibility.
- Deployment
- Cloud, self-hosted, hybrid.
- Strength
- True serializable isolation; full PostgreSQL feature support including triggers and stored procedures.
- Watch for
- Higher latency than single-region databases; complex tuning for small workloads.
Google AlloyDB
- Pricing
- From $1.50/hr per node; storage $0.30/GB/month.
- Target
- High-performance PostgreSQL workloads needing read scale and low latency.
- Deployment
- Google Cloud only.
- Strength
- 4x faster writes than standard PostgreSQL; columnar engine for analytics.
- Watch for
- Single-writer architecture limits write scaling; vendor lock-in to GCP.
Amazon DynamoDB
- Pricing
- On-demand $1.25/WCU/hour; provisioned $0.00065/WCU/hour.
- Target
- Serverless apps needing single-digit-millisecond latency at any scale.
- Deployment
- AWS only.
- Strength
- Fully managed, auto-scaling, single-digit-millisecond latency.
- Watch for
- No SQL joins or transactions; denormalization required; complex query patterns.
User reviews
No user reviews yet. Be the first to write one.
Sources
Reporting on this tool draws on these publicly available sources.
- aws.amazon.com — General availability announcement May 27, 2025; architecture details; 99.99% single-Region and 99.999% multi-Region availability; new capabilities including PostgreSQL views, auto-analyze, AWS Backup integration
- docs.aws.amazon.com — PostgreSQL 16 compatibility; ACID transactions with strong consistency; distributed architecture with four components (relay, compute, transaction log, storage); active-active failover; regional availability; 10,000-row transaction limit and 10 MB transaction size constraint
- aws.amazon.com — Pricing model: $0.33 per DPU-hour for activity; $0.33 per GB-month for storage; 100,000 DPU and 1 GB free-tier monthly allocation; no inter-AZ data transfer charges; multi-Region storage charged per Region
- andrewbaker.ninja — Critical transaction limitations: 10,000-row and 10 MB limits; missing PostgreSQL features (foreign keys, triggers, views, temporary tables, JSON, serializable isolation, extensions); TEXT capped at 1 MB; IAM-only authentication; 1-hour session duration limit; no mixing DDL and DML
- blog.datachef.co — Optimistic concurrency control requiring application-level retry logic; trade-off of completeness for operational simplicity; unsupported features including SERIAL, JSON, bigserial, geospatial, vector types; TEXT field 1 MB limit
- brooker.co.za — DSQL positioning against DynamoDB; disaggregated Journal component enabling independent read/write scaling; range-based sharding versus DynamoDB's hash sharding; physical time and MVCC for strong consistency across all reads/writes
- www.cockroachlabs.com — Aurora DSQL limitations: supports only two active regions; limited region support; lacks true global availability; AWS-exclusive without on-premises or cross-cloud options; early-stage positioning versus battle-tested CockroachDB
- engineering.dena.com — DSQL architecture eliminating direct Storage node communication versus Spanner's Paxos consensus; optimistic concurrency control avoiding upfront locking; independent scaling of reads, writes, storage, SQL execution; lower latency for multi-shard writes