D1 does not have read replication (yet)
D1 is Cloudflare’s main relational database offering. But a year after GA and it still does not have replication. They are promising it…
D1’s read replication will automatically deploy read replicas as needed to get data closer to your users: and without you having to spin up, manage scaling, or run into consistency (replication lag) issues. 2024-04-01
Automatic read replication: our new storage subsystem is built with replication in mind, and we’re working on ensuring our replication layer is both fast & reliable before we roll it out to developers…when we enable global read replication, you won’t have to pay extra for it, nor will replication multiply your storage consumption…We think built-in, automatic replication is important… 2023-05-19
Unfortunately these promises have been misinterpreted in some cases. From the Prisma docs:
Cloudflare’s principles of geographic distribution and bringing compute and data closer to application users, D1 supports automatic read-replication. It dynamically manages the number of database instances and locations of read-only replicas based on how many queries a database is getting, and from where. For write-operations, queries travel to a single primary instance in order to propagate the changes to all read-replicas and ensure data consistency. - Prisma docs
I love the Syntax podcast, but in today’s episode it sounds like they have misread this too.
With Cloudflare’s developer week next week (hopefully, the 2024 schedule is still up), here’s hoping it is finally released.
Update 10th April 2025 - it is finally here and it is really, really cool.