chapter13 - Introduction Flat and nested distributed...

Info iconThis preview shows pages 1–11. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Introduction Flat and nested distributed transactions Atomic commit protocols Concurrency control in distributed transactions Distributed deadlocks Transaction recovery Summary Chapter 13: Distributed Transactions Distributed transaction A flat or nested transaction that accesses objects managed by multiple servers Atomicity of transaction All or nothing for all involved servers Two phase commit Concurrency control Serialize locally + serialize globally Distributed deadlock Introduction Introduction Flat and nested distributed transactions Atomic commit protocols Concurrency control in distributed transactions Distributed deadlocks Transaction recovery Summary Chapter 13: Distributed Transactions Flat transaction Nested transaction Nested banking transaction The four subtransactions run in parallel Flat and nested distributed transactions The coordinator Accept client request Coordinate behaviors on different servers Send result to client Record a list of references to the participants The participant One participant per server Keep track of all recoverable objects at each server Cooperate with the coordinator Record a reference to the coordinator Example The architecture of distributed transactions Introduction Flat and nested distributed transactions Atomic commit protocols Concurrency control in distributed transactions Distributed deadlocks Transaction recovery Summary Chapter 13: Distributed Transactions The protocol Client request to end a transaction The coordinator communicates the commit or abort request to all of the participants and to keep on repeating the request until all of them have acknowledged that they had carried it out The problem some servers commit, some servers abort How to deal with the situation that some servers decide to abort? One-phase atomic commit protocol Allow for any participant to abort First phase Each participant votes to commit or abort The second phase All participants reach the same decision If any one participant votes to abort, then all abort If all participants votes to commit, then all commit The challenge work correctly when error happens Failure model Server crash, message may be lost, no arbitrary fails Introduction to two-phase commit protocol When the client request to abort The coordinator informs all participants to abort When the client request to commit First phase The coordinator ask all participants if they prepare to commit If a participant prepare to commit, it saves in the permanent storage all of the objects that it has altered in the transaction and reply yes . Otherwise, reply no Second phase The coordinator tell all participants to commit ( or abort) The two-phase commit protocol Operations for two-phase commit protocol...
View Full Document

This note was uploaded on 06/12/2011 for the course CS 551 taught by Professor Staff during the Summer '08 term at Colorado State.

Page1 / 68

chapter13 - Introduction Flat and nested distributed...

This preview shows document pages 1 - 11. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online