Download presentation
Presentation is loading. Please wait.
Published byGriffin Watts Modified over 9 years ago
1
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 Slides for Chapter 18: Replication
2
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.1 A basic architectural model for the management of replicated data FE Requests and replies C Replica C Service Clients Front ends managers RM FE RM
3
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.2 View-synchronous group communication
4
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.3 The passive (primary-backup) model for fault tolerance FE C C RM Primary Backup RM
5
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.4 Active replication FEC CRM
6
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.5 Query and update operations in a gossip service Service QueryVal FE RM Query,prevVal,new Update FE Update,prevUpdate id Clients gossip
7
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.6 Front ends propagate their timestamps whenever clients communicate directly FE Clients FE Service Vector timestamps RM gossip
8
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.7 A gossip replica manager, showing its main state components Other replicamanagers Replica timestamp Update log Value timestamp Value Executed operation table Stable updates Updates Gossip messages FE Replica timestamp Replica log OperationIDUpdate Prev FE Replica manager Timestamp table
9
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.8 Committed and tentative updates in Bayou c0c0 c1c1 c2c2 cNcN t0t0 t1t1 titi CommittedTentative t2t2 Tentative update t i becomes the next committed update and is inserted after the last committed update c N. t i+1
10
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.9 Transactions on replicated data B A Client + front end BBB A A getBalance(A) Client + front end Replica managers deposit(B,3); U T
11
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.10 Available copies A X Client + front end P B Replica managers deposit(A,3); UT deposit(B,3); getBalance(B) getBalance(A) Replica managers Y M B N A B
12
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.11 Network partition Client + front end B withdraw(B, 4) Client + front end Replica managers deposit(B,3); U T Network partition B BB
13
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Page 810 Gifford’s quorum concensus examples Example 1Example 2Example 3 Latency Replica 1 75 (milliseconds) Replica 2 65100750 Replica 3 65750 Voting Replica 1 121 configuration Replica 2 011 Replica 3 011 Quorum R 121 sizes W 133 Derived performance of file suite: Read Latency65 75 Blocking probability0.01 0.00020.000001 Write Latency75 100750 Blocking probability0.01 0.01010.03
14
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.12 Two network partitions Replica managers Network partition VXYZ TTransaction
15
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.13 Virtual partition XVYZ Replica managers Virtual partition Network partition
16
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.14 Two overlapping virtual partitions Virtual partition V 1 2 YXVZ
17
Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012 Figure 18.15 Creating a virtual partition Phase 1: The initiator sends a Join request to each potential member. The argument of Join is a proposed logical timestamp for the new virtual partition. When a replica manager receives a Join request, it compares the proposed logical timestamp with that of its current virtual partition. – If the proposed logical timestamp is greater it agrees to join and replies Yes; –If it is less, it refuses to join and replies No. Phase 2: If the initiator has received sufficient Yes replies to have read and write quora, it may complete the creation of the new virtual partition by sending a Confirmation message to the sites that agreed to join. The creation timestamp and list of actual members are sent as arguments. Replica managers receiving the Confirmation message join the new virtual partition and record its creation timestamp and list of actual members.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.