Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... ·...
Transcript of Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... ·...
![Page 1: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/1.jpg)
D R . Y I N G W U Z H U
Consistency and Replication1
Distributed computing
![Page 2: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/2.jpg)
Reasons for Replication
• Data are replicated to increase the reliability of a system.
• Replication for performance Scaling in numbers
Scaling in geographical area
Pros & Cons
Gain in performance, reliability
Cost of increased bandwidth for maintaining replication (consistent replicas)
2
Distributed computing
![Page 3: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/3.jpg)
Topics
Distributed computing
3
Data-centric consistency models
System-wide consistent view on data store
Simultaneous updates
Consistency protocols to implement data-centric consistency models
Client-centric consistency models
Often lack in simultaneous updates
Or once they occur, they can be easily resolved
Replica placement & content distribution
![Page 4: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/4.jpg)
Data-centric Consistency Models
The general organization of a logical data store, physically distributed and replicated across multiple processes.
4
Distributed computing
![Page 5: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/5.jpg)
Consistency Model
A contract between processes and the data store
If the contract is followed, the store promises to work correctly
Normally, a read operation expects to return a value that shows the results of the last write operation on that data
Hard to implement w/o a global clock!
Using locks to implement it
Practical: weaker consistency models!
5
Distributed computing
![Page 6: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/6.jpg)
Data-Centric Consistency Models
Providing system-wide consistent view on a data store
Assume that concurrent processes may be simultaneously update data (simultaneous updates are the norm)
Two models
Sequential consistency
Causal consistency
6
Distributed computing
![Page 7: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/7.jpg)
Sequential Consistency (1)
Behavior of two processes operating on the same data item. The horizontal axis is time.
Propagation of updates from one copy to another
7
Distributed computing
![Page 8: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/8.jpg)
Sequential Consistency (2)
A data store is sequentially consistent when:
• The result of any execution is the same as if the (read and write) operations by all processes on the data store …• were executed in some sequential order, i.e.,
all processes see the same interleaving of operations
• the operations of each individual process appear in this sequence in the order specified by its program.
8
Distributed computing
![Page 9: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/9.jpg)
Sequential Consistency (3)
(a) A sequentially consistent data store.
(b) A data store that is not sequentially consistent.
9
Distributed computing
![Page 10: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/10.jpg)
Sequential Consistency (4)
Three concurrently-executing processes.
10
Distributed computing
![Page 11: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/11.jpg)
Sequential Consistency (5)
Figure 7-7. Four valid execution sequences for the processes of Fig. 7-6. The vertical axis is time.
Four valid execution sequences (90 in total) for the processes in the preceding slide, must be accepted by all processes! Follow contract!
11
Distributed computing
![Page 12: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/12.jpg)
Causal Consistency (1)
Weaker than sequential consistency
For a data store to be considered causally consistent, it is necessary that the store obeys the following condition:
Writes that are potentially causally related …
• must be seen by all processes in the same order.
Concurrent writes …
• may be seen in a different order on different machines.
12
Distributed computing
![Page 13: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/13.jpg)
Causal Consistency (2)
W2(x)b and W1(x)c are concurrent
This sequence is allowed with a causally-consistent store, but not with a sequentially consistent store.
13
Distributed computing
![Page 14: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/14.jpg)
Causal Consistency (3)
(a) A violation of a causally-consistent store.
(b) A correct sequence of events in a causally-consistent store.
14
Distributed computing
![Page 15: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/15.jpg)
Some facts…
Performance and strong consistency can not be achieved simultaneously
Some applications (e.g., DNS, Web) trade consistency for performance!
Why?
Group discussion.
15
Distributed computing
![Page 16: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/16.jpg)
Some facts…
Performance and strong consistency can not be achieved simultaneously
Some applications (e.g., DNS, Web) trade consistency for performance!
Often lack in simultaneous updates
Or once they occur, they can be easily resolved
16
Distributed computing
![Page 17: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/17.jpg)
Topics
Distributed computing
17
Data-centric consistency models
System-wide consistent view on data store
Simultaneous updates
Consistency protocols to implement data-centric consistency models
Client-centric consistency models
Often lack in simultaneous updates
Or once they occur, they can be easily resolved
Replica placement & content distribution
![Page 18: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/18.jpg)
Consistency Protocols
Describes an implementation of a specific consistency model
Primary-based protocols (writes on the primary)
Remote-write
Local-write
Straightforward implementation of sequential consistency
Replicated-write protocols (writes performed on multiple replicas)
Quorum-based
18
Distributed computing
![Page 19: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/19.jpg)
Remote-Write Protocols
The principle of a primary-backup protocol: each update goes to the primary first, the primary performs the update and then forwards the update to the backups which in turn perform the update and send back ack. After all backup have updated their local copy, ack. back to the initiator
19
Distributed computing
Read locally
![Page 20: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/20.jpg)
Local-Write Protocols
Primary-backup protocol in which the primary migrates to the process wanting to perform an update.
20
Distributed computing
Useful for successive local writes!
![Page 21: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/21.jpg)
Quorum-Based Protocols
Read quorum NR
Write quorum Nw
Meet 2 constraints:
NR+Nw > N (avoid R-W conflicts)
Nw > N/2 (avoid W-W conflicts)
21
Distributed computing
![Page 22: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/22.jpg)
Quorum-Based Protocols
Three examples of the voting algorithm. (a) A correct choice of read and write set. (b) A choice that may lead to write-write conflicts. (c) A correct choice, known as ROWA (read one, write all).
22
Distributed computing
![Page 23: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/23.jpg)
Topics
Distributed computing
23
Data-centric consistency models
System-wide consistent view on data store
Simultaneous updates
Consistency protocols to implement data-centric consistency models
Client-centric consistency models
Often lack in simultaneous updates
Or once they occur, they can be easily resolved
Replica placement & content distribution
![Page 24: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/24.jpg)
Client-Centric Consistency Models
Distributed computing
24
Distinct from data centric consistency models
Assumptions
Often lack in simultaneous updates
Or once they occur, they can be easily resolved
Examples: DNS and Web
![Page 25: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/25.jpg)
Eventual Consistency
If no updates take place for a long time, all replicas will gradually become consistent
It works as long as clients always access the same replica (updates are guaranteed to propagate to all replicas)
However, it poses (inconsistency) problems when clients access different replicas over a short period of time
25
Distributed computing
![Page 26: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/26.jpg)
Eventual Consistency
The principle of a mobile user accessing different replicas of a distributed database. inconsistency, solved by client-centric consistency
26
Distributed computing
Updates have not propagated toall replicas yet!
![Page 27: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/27.jpg)
Client-Centric Consistency
Alleviate the problem
Provides guarantees for a single client concerning the consistency of accesses to a data store by that client
No guarantees are given for concurrent accesses by different clients!
27
Distributed computing
![Page 28: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/28.jpg)
Monotonic Reads (1)
A data store is said to provide monotonic-read consistency if the following condition holds:
If a process reads the value of a data item x any successive read operation on x by that process
• will always return that same value
• or a more recent value.
Example: a distributed email databaseThe email read in A location can also appear in B location.
28
Distributed computing
![Page 29: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/29.jpg)
Monotonic Reads (2)
The read operations performed by a single process P at two different local copies of the same data store. (a) A monotonic-read consistent data store.
29
Distributed computing
WS(X): the set of write operations on item XWS(X1,X2): the set of write operations at X1 also performed in X2, part of WS(X2)
Indicates order
![Page 30: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/30.jpg)
Monotonic Reads (3)
The read operations performed by a single process P at two different local copies of the same data store. (b) A data store that does not provide monotonic reads.
30
Distributed computing
Indicates order
![Page 31: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/31.jpg)
Monotonic Writes (1)
In a monotonic-write consistent store, the following condition holds:
A write operation by a process on a data item x is completed before any successive write operation on x by the same process.
31
Distributed computing
![Page 32: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/32.jpg)
Monotonic Writes (2)
The write operations performed by a single process P at two different local copies of the same data store. (a) A monotonic-write consistent data store.
32
Distributed computing
![Page 33: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/33.jpg)
Monotonic Writes (3)
The write operations performed by a single process P at two different local copies of the same data store. (b) A data store that does not provide monotonic-write consistency.
33
Distributed computing
![Page 34: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/34.jpg)
Read Your Writes (1)
A data store is said to provide read-your-writes consistency, if the following condition holds:
The effect of a write operation by a process on data item xwill always be seen by a successive read operation on x by the same process.
34
Distributed computing
![Page 35: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/35.jpg)
Read Your Writes (2)
(a) A data store that provides read-your-writes consistency.
35
Distributed computing
![Page 36: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/36.jpg)
Read Your Writes (3)
(b) A data store that does not.
36
Distributed computing
![Page 37: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/37.jpg)
Question?
Distributed computing
37
For web server (which updates the web pages) and web browsers, does the web browsing provide “read-your-writes” consistency in the real world?
![Page 38: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/38.jpg)
Writes Follow Reads (1)
A data store is said to provide writes-follow-reads consistency, if the following holds:
A write operation by a process on a data item xfollowing a previous read operation on x by the same process is guaranteed to take place on the same or a more recent value of x that was read.
38
Distributed computing
![Page 39: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/39.jpg)
Writes Follow Reads (2)
(a) A writes-follow-reads consistent data store.
39
Distributed computing
![Page 40: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/40.jpg)
Writes Follow Reads (3)
(b) A data store that does not provide writes-follow-reads consistency.
40
Distributed computing
![Page 41: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/41.jpg)
Topics
Distributed computing
41
Data-centric consistency models
System-wide consistent view on data store
Simultaneous updates
Consistency protocols to implement data-centric consistency models
Client-centric consistency models
Often lack in simultaneous updates
Or once they occur, they can be easily resolved
Replica placement & content distribution
![Page 42: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/42.jpg)
Replication Examples
Web applications
42
Distributed computing
![Page 43: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/43.jpg)
Content Replication and Placement
The logical organization of different kinds of copies of a data store into three concentric rings.
Replicated web servers, server-initiated replicas on demand, client-initiated replicas by caching
43
Distributed computing
![Page 44: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/44.jpg)
Permanent Replicas
Distributed computing
44
Web servers
Mirror sites
A small number of servers in each site (load balancing)
![Page 45: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/45.jpg)
Server-Initiated Replicas
Counting access requests from different clients (and where they are from). Assuming that P is closest to C1 and C2
45
Distributed computing
![Page 46: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/46.jpg)
Client-Initiated replicas
Distributed computing
46
Driven by clients
Close to client side
Browser cache
Proxy cache (hierarchy?)
![Page 47: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/47.jpg)
Content Distribution:
How to propagate updated content?
1. Propagate only a notification of an update. (invalidation protocol): less BW cost
2.Transfer data from one copy to another.
3.Propagate the update operation to other copies: minimal BW cost?
Consider reads : writes ratio
47
Distributed computing
![Page 48: Chapter 7 Consistency And Replicationfac-staff.seattleu.edu/zhuy/web/teaching/Fall11/SEGR550/... · 2010-05-06 · Topics Distributed computing 3 Data-centric consistency models System-wide](https://reader034.fdocuments.net/reader034/viewer/2022050404/5f820d529544d501fd1a4300/html5/thumbnails/48.jpg)
Content Distribution
Design issue: whether updates are pulled or pushed
Lease (hybrid): push guaranteed within lease; otherwise poll & pull
Timeout(TTL) in web caches
48
Distributed computing