Google file system(GFS) is a foundational paper in the domain of distributed storage. Built at Google, GFS is a scalable distributed file system for data…
Paper Notes: Firestore – The NoSQL Serverless Database for the Application Developer
In the world of application development, most of the computation is performed on the edge. Though for certain use cases such as syncing user data…
Vector Clocks: So what time is it?
In last 2 posts, we have seen how time is a hard thing to calculate in a distributed systems and how Lamport logical clock can…
Lamport Logical Clock: One after the another. But not together.
“Using a clock to model causality is like using a banana to model a nuclear reactor.” – Leslie Lamport As part of the last post,…
How does your computer know what time it is and why will it break your distributed systems?
Something that has always amused me is how does a computer know what time it is even when it is not connected to an internet.…
Paper Notes: Amazon Aurora – Design Considerations for High Throughput Cloud-Native Relational Databases
Amazon Aurora is an AWS service for relational database. As part of this paper, we will look into the decisions that led to a scalable…
Paper Notes: Bitcask – A Log-Structured Hash Table for Fast Key/Value Data
As part of this post, I will cover the research paper for Bitcask and do a code walkthrough of an implementation that I wrote using…
Paper Notes: SWIM(Scalable Weakly-consistent Infection-style Process Group Membership Protocol)
In any distributed system comprising of multiple nodes, one question that we need to answer time and again is which nodes in our system are…