# Dynamo, DynamoDB, and Aurora DSQL

DevFeed: [Dynamo, DynamoDB, and Aurora DSQL](<https://devfeed.tech/articles/dynamo-dynamodb-and-aurora-dsql-12576.md>)

Original publisher: [Read original article](<http://brooker.co.za/blog/2025/08/15/dynamo-dynamodb-dsql.html>)

Author: Marc Brooker

Published: 2025-08-15T00:00:00Z

Content type: article

Language: en

Sources: [Marc Brooker's Blog](<https://devfeed.tech/sources/marc-brooker-s-blog.md>), [Marc Brooker's Blog](<https://devfeed.tech/sources/marc-brooker-s-blog-2.md>)

Topics: [Amazon DynamoDB](<https://devfeed.tech/topics/amazon-dynamodb.md>), [DSQL](<https://devfeed.tech/topics/dsql.md>), [Dynamo](<https://devfeed.tech/topics/dynamo.md>), [NoSQL](<https://devfeed.tech/topics/nosql.md>), [Replication](<https://devfeed.tech/topics/replication.md>), [Availability](<https://devfeed.tech/topics/availability.md>), [Serverless](<https://devfeed.tech/topics/serverless.md>), [SQL](<https://devfeed.tech/topics/sql.md>), [Amazon Web Services](<https://devfeed.tech/topics/aws.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>)

Tags: [amazon-dynamodb](<https://devfeed.tech/tags/amazon-dynamodb.md>), [availability](<https://devfeed.tech/tags/availability.md>), [aws](<https://devfeed.tech/tags/aws.md>), [data](<https://devfeed.tech/tags/data.md>), [database](<https://devfeed.tech/tags/database.md>), [databases](<https://devfeed.tech/tags/databases.md>), [dsql](<https://devfeed.tech/tags/dsql.md>), [dynamo](<https://devfeed.tech/tags/dynamo.md>), [replication](<https://devfeed.tech/tags/replication.md>), [serverless](<https://devfeed.tech/tags/serverless.md>), [sql](<https://devfeed.tech/tags/sql.md>)

## AI overview

This article compares the architectures of Amazon Dynamo, Amazon DynamoDB, and Aurora DSQL, beginning with how they provide durability and availability when a single host fails. It explains Dynamo's replication across successor nodes in a consistent-hashing ring and contrasts it with DynamoDB's replica groups, multi-AZ servers, Paxos replication, quorum acknowledgments, and scaling behavior.

## Source excerpt

Dynamo, DynamoDB, and Aurora DSQL Names are hard, ok? People often ask me about the architectural relationship between Amazon Dynamo (as described in the classic 2007 SOSP paper), Amazon DynamoDB (the serverless distributed NoSQL database from AWS), and Aurora DSQL (the serverless distributed SQL database from AWS). There's a ton to say on the topic, but I'll start off on comparing how the systems achieve a few key properties. The key references for this post are: For Dynamo, Dynamo: Amazon's Highly Available Key-value Store from SOSP'07. For DynamoDB, Amazon DynamoDB: A Scalable, Predictably Performant, and Fully Managed NoSQL Database Service from ATC'22, Distributed Transactions at Scale in Amazon DynamoDB from ATC'23, and Lessons learned from 10 years of DynamoDB from the Amazon Science blog. For DSQL, my blog series on DSQL. Durability The databases we're looking at offer different levels of durability, but all three are designed not to lose data when a single host fails. Dynamo does this by taking advantage of its consistent hashing approach, replicating the data across multiple hosts in order in the hash ring: To achieve high availability and durability, Dynamo replicates its data on multiple hosts. Each data item is replicated at N hosts. ... Each key, k, is assigned to a coordinator node[]. The coordinator is in charge of the replication of the data items that fall within its range. In addition to locally storing each key within its range, the coordinator replicates these keys at the N-1 clockwise successor nodes in the ring. Like Dynamo, DynamoDB assigns a node in a hash ring to each individual item. But that's where the similarities stop. Instead of replicating across multiple nodes in the ring, in DynamoDB each node consists of a replica group with multiple servers in multiple AZs using Paxos to replicate the data. Instead of appearing the ring N times, each item appears once, and takes advantage of fault-tolerant nodes rather than spreading over multiple