Hard to Guarantee Atomicity

Let's check out why atomicity is hard to achieve in general and how it becomes even more difficult in distributed systems.

The second challenging aspect of transactions, and especially distributed transactions, is atomicity.

One of the benefits of grouping operations inside a transaction is the guarantee that either all of them will be performed, or none of them will be. As a result, the application developer does not need to think about scenarios of partial failures, where the transaction fails after some of the operations were already performed.

Similar to the isolation guarantees, the atomicity guarantee makes it easier to develop applications. It delegates some of the complexity around handling these situations to the persistence layer, e.g., to the datastore used by the application that provides atomicity guarantees.

Get hands-on with 1200+ tech skills courses.