Two Phase Commit - Distributed Transactions | Systems Design Interview 0 to 1 with Ex-Google SWE
Anyone in the 3% of my viewership looking for me to two phase commit to them? Thanks @Cricket for bringing this up. I'll add this here since I think this is cool. It's also worth mentioning three phase commit. In a three phase commit, instead of just sending messages to our participant nodes twice, we add a middle stage called "prepare to commit" which the coordinator sends out after all the participants respond "OK" in the prepare stage. Now, if the coordinator goes down in the last stage of 3PC, the participant nodes can query one another and see that at least one node had "prepare to commit" status, meaning that they should all commit the transaction. If they decide together (probably requires distributed consensus) that none of them had "prepared to commit" status, they can then abort the transaction. Now, in the event that a coordinator node goes down, we can actually recover. Note that if a participant goes down, we still need to keep trying to write to it forever. Saga commits seem to be a bit of a different thing, and the concept is more so that instead of attempting to write to many nodes at once, write them one at a time, and if some of the writes fail, attempt to perform a separate "compensating transaction" in order to revert that write and bring the database back to its old state. Obviously here you run the risk of that revert failing.

Consistent Hashing - Rebalancing Partitions | Systems Design Interview 0 to 1 with Ex-Google SWE

Distributed Transactions: Two-Phase Commit Protocol

Saga Pattern | Distributed Transactions | Microservices

Security Management for AI Systems

Distributed Transactions are Hard (How Two-Phase Commit works)

System Design Interview Deep Dive: Build a Scalable Ad Click Aggregator (Real-World Example)

Message Queues in System Design Interviews w/ Meta Staff Engineer

Do you know Distributed transactions?

Microservices with Databases can be challenging...

How to do Distributed Transactions the RIGHT way? Microservices

System Design Interview - Design a Distributed LRU Cache (Full mock interview with Sr. MAANG SWE)

Design PasteBin | Systems Design Questions 3.0 With Ex-Google SWE

Distributed Systems 7.1: Two-phase commit

START YOUR TUESDAY WITH FAITH | TODAY GOD IS GIVING YOU UNEXPECTED OPPORTUNITIES | FATHER FREDDY ...

Turing Award Winner: Disagreeing with Google, Postgres, Future Problems | Mike Stonebraker

What's Stream Processing + When Do We Use It? | Systems Design Interview 0 to 1 with Ex-Google SWE

Master 2 Phase Commit | Microservices Transaction Management Interview Questions | Code Decode

SQL vs NoSQL - Who Wins? | Systems Design Interview 0 to 1 with Ex-Google SWE

