Recall & Review
beginner
What is the Saga pattern in distributed transactions?
The Saga pattern breaks a large transaction into smaller, independent steps. Each step has a compensating action to undo it if needed. This helps keep data consistent across multiple services without locking resources.
Click to reveal answer
beginner
How does the Saga pattern handle failures in a distributed system?
If a step fails, the Saga pattern runs compensating actions for all previous successful steps to undo their effects. This rollback keeps the system consistent without needing a global lock.
Click to reveal answer
intermediate
What are the two main types of Saga execution?
1. Choreography: Each service listens for events and triggers the next step. 2. Orchestration: A central coordinator tells each service what to do next.
Click to reveal answer
intermediate
Why is the Saga pattern preferred over distributed two-phase commit in microservices?
Saga avoids locking resources for long times, improving availability and scalability. It fits well with microservices by allowing each service to manage its own data and rollback independently.
Click to reveal answer
beginner
What is a compensating transaction in the Saga pattern?
A compensating transaction is an action that reverses the effect of a previous step in the Saga. It is used to undo changes when a later step fails.
Click to reveal answer
What does the Saga pattern primarily help with in distributed systems?
✗ Incorrect
The Saga pattern helps maintain data consistency across services without locking resources by using compensating transactions.
Which of the following is NOT a type of Saga execution?
✗ Incorrect
Replication is not a Saga execution type. The two main types are Choreography and Orchestration.
In the Saga pattern, what happens if a step fails?
✗ Incorrect
When a step fails, compensating transactions undo the effects of previous successful steps to keep data consistent.
Why is Saga pattern better than two-phase commit for microservices?
✗ Incorrect
Saga improves availability and scalability by avoiding long resource locks and fits microservices architecture.
What is the role of a compensating transaction?
✗ Incorrect
A compensating transaction reverses the effect of a previous step to maintain consistency if a later step fails.
Explain the Saga pattern and how it manages distributed transactions.
Think about how to keep data consistent without locking everything.
You got /4 concepts.
Describe the difference between Saga choreography and orchestration.
Compare who controls the flow of steps.
You got /3 concepts.
