-
Trying to Wrap My Head Around The Dynamo Storage System: A Deep Dive
Introduction The world of databases is very interesting. To build a loveable product, a core infrastructure piece that’s needed is the data persistence layer. I find this data persistence layer to be like a tip of the iceberg, the get and the put calls have so much going under the hood that it’s mind blowing…
-
Introduction to LSM Trees: May the logs be with you
This post is a part of a newsletter that I run: “Scamming The Coding Interview“, which is geared towards helping people ACE their coding interviews. We send a coding question on weekdays along with a system design article like this one on weekends. Do subscribe If you find this article valuable. Introduction What will be the simplest…
-
Basics of Database Partitioning and Partition Strategies
You are a part of a startup which has recently scaled to reach a huge number of users. This means that the increased number of users are going to generate a huge amount of data that you have to store and manage. It soon becomes evident that managing a huge dataset is a major hurdle…
-
Tackling Lost Updates Problem In Database Using Stricter Transaction Isolation Level
Introduction Databases are made for scale and are a highly concurrent system. Thus it is normal for them to expect multiple concurrent connections. Also, in most situations, we’ll want our database to be the source of truth and always contain consistent data. There are many concurrency related phenomena that can occur in a database when…