What is DSQL?

Published on March 14, 2025

DSQL can refer to either the proprietary AWS Aurora DSQL database or to distributed SQL databases – a class of databases designed to provide horizontal scalability, high availability, and strong consistency while maintaining the relational database capabilities that developers expect. Unlike traditional SQL databases, which often require complex sharding or replication strategies to scale, distributed SQL databases natively distribute data across multiple nodes and regions, allowing applications to handle increasing workloads without sacrificing performance.

Check out the webinar below for an introduction to distributed SQL by technical evangelist, Rob Reid:

What is Amazon Aurora DSQL?

aurora-dsql-cluster

Amazon Aurora DSQL is a serverless distributed SQL database introduced by AWS in late 2024. It is designed to offer scalability, strong consistency, and high availability while eliminating infrastructure management. Aurora DSQL extends the Amazon Aurora family by providing an active-active multi-region architecture with automatic sharding, replication, and failover capabilities.

Key Features of Aurora DSQL

  • Serverless & Fully Managed – No need for manual provisioning, scaling, or maintenance.

  • Multi-Region Active-Active Availability – Supports synchronous replication across multiple AWS regions high availability guarantees

  • Optimistic Concurrency Control (OCC) – Handles transactions using OCC and snapshot isolation, which may lead to higher transaction abort rates under high contention workloads

  • Automatic Sharding & Scale-Out Performance – Aurora DSQL automatically distributes data across nodes, scaling for both reads and writes

Aurora DSQL belongs to the distributed SQL class of databases, and it can be compared to offerings like Google Cloud Spanner, Apache Cassandra, and CockroachDB. All of these systems address the challenge of scaling databases horizontally while maintaining consistency, but they differ in design decisions, consistency models, performance characteristics, and pricing.

Aurora DSQL: Key Limitations

AWS announced the public preview of Aurora DSQL at AWS re:Invent 2024, and as of March 2025, Aurora DSQL is still in preview. In the preview, Aurora DSQL is available in limited regions (e.g., three US regions) and is free to try. AWS’ investment in distributed SQL is particularly exciting to companies like Cockroach Labs, which offered the first commercially available distributed SQL database a decade ago.

Because Aurora DSQL is in preview, there are still a number of feature gaps, including a lack of PostgreSQL compatibility, and availability in only a few regions. In addition, the service is not yet battle-tested at the level of the original Aurora or other mature databases. AWS is likely to continue improving Aurora DSQL’s compatibility and expanding its regional availability throughout 2025. If it follows a trajectory similar to past Aurora features, general availability (GA) could arrive by late 2025, possibly with more enterprise features and compliance certifications (at launch it’s only in preview, so not for production use yet).

Overall, Aurora DSQL is an exciting development in cloud databases – bringing the scalability of NoSQL and the power of SQL together. Positioning itself against technologies like Google Cloud Spanner and CockroachDB, DSQL is another option for customers looking for a serverless operation, multi-region design, and aspirational PostgreSQL compatibility. For now (early 2025), it’s a technology to watch and experiment with, especially for those already in the AWS ecosystem or those hitting the limits of single-node databases and considering a distributed SQL alternative.

Aurora DSQL vs. Google Cloud Spanner

Google Cloud Spanner is a distributed SQL database (first described by Google in 2012) that offers global-scale transactions with strong consistency. Both Spanner and Aurora DSQL emphasize horizontal scalability, fault-tolerance, and ACID consistency across regions, but there are notable differences:

  • Architecture & Consistency: Spanner relies on a proprietary TrueTime API (atomic clocks & GPS) to achieve external consistency (linearizable global order of transactions). Aurora DSQL uses AWS’s Time Sync Service for tightly synchronized clocks to support its snapshot isolation model. In practice, both deliver synchronous replication across regions with no data loss, but Spanner’s approach guarantees a single global serialization order for transactions. Aurora DSQL’s approach aims for minimal latency impact and resilience (it requires 3 regions—two active and one witness—for quorum, similar to Spanner’s Paxos-based replication).

  • Performance: AWS has claimed significant performance advantages for Aurora DSQL over Spanner. In fact, Amazon’s CEO announced that Aurora DSQL achieved reads and writes four times faster than Spanner in internal benchmarks. It will be interesting to see the performance comparison play out as DSQL gains more users.

  • Scalability & Use Cases: Both databases can scale horizontally to large sizes. Aurora DSQL can also operate across multiple regions, but gives you more control to link specific regions (it’s currently only in a few AWS regions during preview). Spanner has been used for multi-region consistent deployments, while Aurora DSQL is yet to be truly tested on an enterprise scale.

  • Platform & Compatibility: Spanner is available only on Google Cloud Platform, whereas Aurora DSQL is an AWS service (and currently in limited preview regions on AWS). Aurora DSQL’s PostgreSQL compatibility means it can work with many existing tools and ORMs, whereas Spanner uses its own SQL dialect (though JDBC drivers exist, and Google provides a PostgreSQL-interface for Spanner in a separate product variant). Neither offer compelling options for those seeking multi-cloud deployments in the future.

Aurora DSQL vs. Apache Cassandra

Apache Cassandra is a popular open-source NoSQL database known for its extreme scalability and always-on design. It takes a very different approach from Aurora DSQL, trading some consistency guarantees for partition tolerance and speed. Comparing Cassandra to Aurora DSQL highlights the differences between NoSQL (AP) systems and distributed SQL (CP/ACID) systems:

  • Data Model and Features: Cassandra is a NoSQL wide-column store, whereas Aurora DSQL is a relational SQL database. Aurora DSQL supports SQL queries, joins, secondary indexes, and ACID multi-row transactions. As of version 5.0, Cassandra now also supports secondary indexes and ACID transactions.

  • Consistency Model: Cassandra clients can tune consistency per query (e.g., reads or writes), and as of 5.0 offers ACID transactions. Aurora DSQL is designed for strong consistency – a committed transaction’s changes are visible immediately to all subsequent reads cluster-wide. Essentially, Aurora DSQL claims immediate consistency and full ACID semantics, whereas Cassandra follows an “eventually consistent” model that sacrifices some correctness for availability and performance.

  • Performance and Scalability: Both systems scale horizontally, but Cassandra’s scaling is “shared-nothing” and proven in some of the largest data workloads in the world. Aurora DSQL’s scaling is impressive in that it handles complex SQL operations while scaling, but being newer, real-world benchmarks will further reveal its performance at extreme scale. Cassandra can ingest massive write loads and scale out to petabytes of data across dozens or hundreds of nodes. Because it forgoes synchronous cross-node coordination on writes (unless configured otherwise), it can offer lower write latency and higher throughput in some scenarios.

  • Use Cases & Flexibility: Use cases that suit Apache Cassandra include scenarios where you need to handle huge volumes of data with simple queries, and can tolerate eventual consistency – for example, IoT data ingestion, analytics where slight delays are okay, messaging logs, or content feed storage. If you need to perform complex queries (multi-table joins, aggregations, etc.) and rely on transactional consistency, a distributed SQL system like Aurora DSQL or CockroachDB could be more appropriate.

Aurora DSQL vs. CockroachDB

CockroachDB was the first commercially available distributed SQL database, known for its performance, high availability, scalability, and resilience. CockroachDB and Aurora DSQL share goals of combining SQL features with horizontal scale, but they differ in maturity and deployment models:

  • Deployment and Flexibility: CockroachDB can be deployed anywhere – on-premises, on any cloud, or via Cockroach Labs’ managed service. It supports hybrid and multi-cloud deployments, giving companies cloud flexibility and even the ability to run across cloud providers. Aurora DSQL, on the other hand, is a proprietary AWS service only, offered as a serverless managed database on AWS.

  • Consistency and Transactions: Both systems ensure strong consistency for transactions. A key difference is the transaction isolation level: CockroachDB runs all transactions with serializability by default, which is the strictest isolation level, ensuring no anomalies or write skew issues occur. Aurora DSQL implements repeatable-read snapshot isolation (optimistic concurrency control), which allows for high concurrency and performance, but under higher contention may result in transaction rollbacks for conflicts. For workloads with lots of contention or hot spots, CockroachDB’s approach avoids anomalies and it naturally supports features like foreign keys and integrity constraints across the cluster. Aurora DSQL in preview does not yet support certain PostgreSQL features like foreign keys, triggers, or views, whereas CockroachDB has long supported foreign keys, JSON data, and many Postgres-compatible features. This means that today CockroachDB will handle complex relational schemas more completely, while Aurora DSQL’s focus has been on core transactional performance and will likely add additional features over time.

  • Performance and Scalability: Both databases are built to scale out on commodity hardware and handle heavy loads. CockroachDB has proven performance in production deployments, executing massive numbers of transactions with low latency and no manual sharding – it automatically balances data across nodes. It maintains indexes and constraints cluster-wide, so applications always see consistent, up-to-date data. One area of distinction is latency and locality: CockroachDB allows configuring data locality, and it automatically routes queries to nearest data copies. As of its preview, Aurora DSQL does not yet offer granular data locality controls to, say, pin a table to one region – it treats the entire cluster as a single logical database that is replicated. This could change in the future, but currently CockroachDB provides more control and has been successfully adopted in enterprises around the world.


RELATED: Watch our webinar on-demand, “CockroachDB vs. Amazon Aurora: Comparing Distributed Relational Databases.”


If an organization values total cost of ownership and freedom from vendor lock-in, they might lean toward CockroachDB; if they value hands-off management and deep AWS integration, Aurora DSQL is attractive. It’s also worth noting that CockroachDB, with multi-cloud capability, can help avoid cloud concentration risk, whereas Aurora DSQL ties your data layer to AWS.

Battle-Tested vs. Beta: Aurora DSQL vs. CockroachDB

While both Aurora DSQL and CockroachDB are distributed SQL databases, CockroachDB offers superior transactional consistency, PostgreSQL compatibility, operational flexibility, multi-region, and multi-cloud capabilities. Since CockroachDB has been commercially available for nearly a decade, the team has been innovating, pioneering, and grappling with the distributed SQL technology for significantly longer. The maturity of CockroachDB is a testament to the engineers behind the technology. The table below highlights key differences:

aurora-dsql-vs-cockroachdb-comparison table

When to Choose CockroachDB Over Aurora DSQL

  • For business-critical workloads: CockroachDB offers stronger consistency (Serializable isolation), ensuring better reliability under concurrent transactions.

  • For multi-cloud or hybrid deployments: Aurora DSQL is AWS-exclusive, while CockroachDB runs across all cloud providers and on-prem.

  • For PostgreSQL compatibility: CockroachDB supports features like foreign keys, triggers, stored procedures, and sequences, while Aurora DSQL currently does not.

  • For predictable pricing and control: CockroachDB offers flexible pricing models and deployment options (serverless, dedicated, self-hosted, and pay-as-you-go), whereas Aurora DSQL, while currently in a free preview, provides no clarity as to how the pricing could change over time.

Aurora DSQL and CockroachDB both provide scalable, distributed SQL solutions, but CockroachDB stands out for enterprise-grade consistency, PostgreSQL compatibility, and deployment flexibility. Additionally, CockroachDB is battle-tested. Organizations looking for a multi-cloud, high-performance transactional database with rich SQL support will find CockroachDB to be a superior choice over Aurora DSQL.

Get started with CockroachDB Cloud today. We’re offering $400 of free credits to help kickstart your CockroachDB journey, or get in touch today to learn more.

DSQL FAQ

What is DSQL (Distributed SQL)?

DSQL can refer to either the proprietary database, AWS Aurora DSQL, or to a class of databases designed to provide horizontal scalability, high availability, and strong consistency while maintaining the relational database capabilities that developers expect.

What is distributed SQL?

Distributed SQL databases are a class of databases designed to provide horizontal scalability, high availability, and strong consistency while maintaining the relational database capabilities that developers expect.

What is Aurora DSQL?

Announced at AWS re:Invent 2024, Aurora DSQL belongs to the class of distributed SQL databases, and it can be compared to offerings like Google Cloud Spanner, Apache Cassandra, and CockroachDB. All these systems address the challenge of scaling databases horizontally while maintaining consistency, but they differ in design decisions, consistency models, performance characteristics, and pricing.

What are the key features of DSQL?

At the time of writing, DSQL is serverless and fully managed, offers multi-region Active-Active availability, optimistic Concurrency Control (OCC), and automatic sharding. Since Aurora DSQL is in preview, we anticipate changes to be forthcoming.

What are the most commonly used distributed SQL databases?

Today, the most commonly used distributed SQL databases include Google Spanner and CockroachDB. CockroachDB was the first commercially available distributed SQL database.

How does CockroachDB compare with Aurora DSQL?

While both Aurora DSQL and CockroachDB are distributed SQL databases, CockroachDB offers superior transactional consistency, PostgreSQL compatibility, operational flexibility, and multi-cloud capabilities. Since CockroachDB has been commercially available for nearly a decade, the team has been innovating, pioneering, and grappling with the distributed SQL technology for significantly longer.

Aurora vs. CockroachDB
How the cloud SQL databases stack up.