Skip to content

Distributed Computing Musings

Deep dive into distributed computing concepts

  • Home
  • About Me

Year: 2022

  • Home
  • 2022
  • Page 2

Transactions: Introduction to serializability techniques

So far we have seen various problems that arise with concurrent transactions and how different approaches try to tackle them(and sometimes fail). The major issue with…

Posted on February 9, 2022February 9, 2022
  • Database
  • Transaction

Transactions: Write skew & why we need serialization?

Up until now we have seen various problems that can arise due to concurrent request for both read as well as write access of a…

Posted on February 7, 2022February 7, 2022
  • Database
  • Transaction

Transactions: Tackling lost updates

As part of read committed isolation and snapshot isolation, we primarily focussed on tactics to ensure correctness of reads in a concurrent transactional system. But…

Posted on February 4, 2022February 4, 2022
  • Database
  • Transaction

Transactions: Snapshot Isolation

In our previous post we covered read committed isolation level. Read committed isolation level ensures that: We cannot perform reads across transactions It prevents dirty…

Posted on February 3, 2022February 3, 2022
  • Database
  • Transaction

Transactions: Read committed isolation

Ensuring that each resource is accessed and modified by a single user at a time is very complex on the application layer. This is why…

Posted on January 31, 2022January 31, 2022
  • Database
  • Transaction

Transactions: Atomicity & Isolation

In last post, we saw the use case of why we need transactions to maintain a consistent state of our storage system. A database is…

Posted on January 28, 2022January 28, 2022
  • Database
  • Transaction

Transactions: Why we need all or nothing?

In real life applications, things can go wrong for scenarios which you have never considered while designing the application. These failures can happen due to…

Posted on January 25, 2022January 25, 2022
  • Database
  • Transaction

Partitioning: Handling secondary indexes in partitions

Up until now we have discussed partitioning in a system where we are able to store a record in a partition and retrieve from the…

Posted on January 23, 2022January 23, 2022
  • Partitioning

Partitioning: Consistent Hashing

While ending our discussion on various approaches to partitioning, we saw how the typical hashing approaches fail when we encounter a node failure or when…

Posted on January 21, 2022January 21, 2022
  • Partitioning

Partitioning: Approaches to partitioning

Before diving into approaches to partition a database, let us clear up one thing in aspect of partition and its relationship with replication. Partitioning &…

Posted on January 19, 2022
  • Partitioning

Posts navigation

Older
Next

Recent Posts

  • Paper Notes: Zookeeper – Wait-free coordination for Internet-scale systems
  • Paper Notes: Dynamo – Amazon’s Highly Available Key-value Store
  • Sloppy Quorum and Hinted handoff: Quorum in the times of failure
  • Vector Clocks: Keeping time in check
  • Implementing Raft consensus algorithm in Go

Recent Comments

  1. Paper Notes: Zookeeper – Wait-free coordination for Internet-scale systems – WONDERFUL PORTAL on Paper Notes: Zookeeper – Wait-free coordination for Internet-scale systems
  2. Paper Notes: Dynamo – Amazon’s Highly Available Key-value Store – Distributed Computing Musings on Sloppy Quorum and Hinted handoff: Quorum in the times of failure
  3. Sloppy Quorum and Hinted handoff: Quorum in the times of failure – Distributed Computing Musings on Replication: Maintaining a Quorum
  4. varunu28 on Vector Clocks: Keeping time in check
  5. Chenna on Vector Clocks: Keeping time in check
Copyright © 2022 Distributed Computing Musings. All Rights Reserved