The Replicated Log 0001

Hello, and welcome to The Replicated Log, my newsletter centered roughly around the distributed systems and database space. I'm Anirudh, and I work on the Magma storage engine at Couchbase. In my free time I read, run, watch TV and occasionally write poetry. Welcome!

I'm very passionate and curious about the data systems space as a whole, with specific interest in distributed databases, streaming computation, dataflow systems, and storage engines, with the occasional detour into things like formal verification, and then some. I'm also interested in keeping up with the research happening in said spaces - that should give you a good enough idea of what's to come as a part of this newsletter.

I'm writing this newsletter to share the things I know (admittedly not much) and the things I come across (much more than the latter), along with possibly a deep dive or some small explanation of a new thing I've learnt, every two weeks or so. I'm doing this in the hope that there's at least one person who learns something new every two weeks; I find that to be a non-negotiable given that my curiosity has largely been fuelled by the work of folks who chose to share what they knew and learnt, and this is my way of giving back.

That being said, I'm still largely figuring out what this newsletter is going to look like, the cadence, the content, so much of it is undetermined - you're seeing the transaction before it commits here xD I'm sure I'll end up changing a bunch of stuff, but what isn't going to change is that I'm going to be writing about the things I've been interested in.

I have no deep dive for you folks this month, as I keep getting nerd-sniped by nice questions that I come across whilst writing it; for example, why do LSM Trees have levels? More on that in the next edition.

A Tribute to some of my inspirations

It seems fair that I start this off by talking about some of the talks and lectures that inspired me the most.

CockroachDB Internals

This was the first distributed database I learnt about. I was so fascinated by everything in this video - distributed transactions, consensus, a distributed KV layer, consistency semantics, consensus groups, sharding... this melted 19-year-old me's brain, and gave me a burning curiosity that brought me to where I am today. No further comments from me, this is a fantastic watch!

Video Link

Deterministic Simulation and Testing in FoundationDB

I came across this talk before Deterministic Testing/Simulation was made a popular idea by Antithesis (founded by the speaker!), Turso, and friends; I find FoundationDB to be one of the most interesting databases out there for a number of reasons (it has a mini transaction engine in every client, among other things), and this talk dived really deep into how the team worked really hard to find and eliminate what would have otherwise been nightmarishly hard bugs to catch. I found it really cool that they had an array of nodes that they just left running to catch some of those particularly crazy bugs.

Video Link

RocksDB Internals, explained by Dhruba Borthakur

Having worked on LSM Trees at work, I have a fraction of an insight into how hard it is to build performant and correct storage systems. This talk by Dhruba Borthakur, one of the earliest folks at RocksDB, now relatively ubiquitous as an embeddable and performant Key-Value store, talks about embedded KV Databases are necessary, explains the LSM Tree architecture, talks about some of the problems with LevelDB and then introduces RocksDB. Truly a fantastic tour of the space not just from the perspective of a systems engineer but also from that of someone who would consume the store in their product.

Video Link

SkyPlane (NSDI 2023)

This project aims to solve the problem of slow and expensive data egress (for many reasons) from object storage offerings that major cloud providers offer by rather craftily building an ad-hoc overlay routing network on top of compute nodes on said providers, exploiting parallel VMs and parallel connections to make the data transfer much faster. Admittedly, I don't understand this very well, but it's very cool.

Video Link

Time, Clocks, and the Ordering of Events in a Distributed System - Leslie Lamport

Paper: https://lamport.azurewebsites.net/pubs/time-clocks.pdf

This is one of my favourite research papers of all time, right alongside the Mapreduce paper.

Lamport starts by considering the problem of ordering events in a distributed system, defined more succinctly as a collection of processes that are spatially separated, that communicate with each other by sending messages. Ordering is important, and is often the source of correctness in many systems. This paper walks through the notion of "Logical Time" - time that doesn't rely on (at the time) inaccurate physical clocks - and also provides an algorithm to convert a partial ordering of events to a total ordering, deriving bounds on clock drift.

It's a dense paper, with a lot of invariant-based reasoning, but it's so worth it - especially the part where they explain the design of a distributed, leaderless mutex lock.

And that's a wrap

Thank you for reading! I hope at least one of these videos has brought you some joy, and most importantly, curiousity!

As always, I'm open to a conversation or feedback about any of this at ani dot rowjee at gmail dot com. Stay tuned for the next edition, where I'll be talking about LSM Trees in more detail.

Signing off,
Anirudh


Published on: 2025-07-17