Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems.

Similar presentations


Presentation on theme: "Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems."— Presentation transcript:

1 Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems (CSC 8320)

2 What is Replication? Replication is the process of having multiple copies of identical data and computations in distributed systems. Data Replication: same data stored on multiple storage devices Computation/Service Replication: same computing task is executed multiple times. Space : executed on separate devices Time: executed repeatedly on single device

3 Distributed Services & Replication  Distributed systems structured as clients and services.  Clients invoke server operations by making requests.  Using single server will be simple but only as fault tolerant as the processor. Alternative:  Using multiple servers which are replicas of a single server and are executed by separate processors.  Each of these servers will fail independently and hence improve fault tolerance  Protocols are used for client interactions with replicas

4 Why do we need replication?  Improves reliability of system  Facilitates scaling over time and space  Better accessibility with faster response time  Better Fault tolerance

5 Replication Models  Transactional: model for replicating transactional data.(E.g. Database) One copy serializability is followed i.e. serial execution of transactions over a single copy of database Outcomes are in accordance with ACID properties

6 Replication Models …  State machine: model assumes that replicated process is a deterministic finite automata. one machine is the master and the others are slaves. Master is in charge of receiving requests from clients and executing them on all replicas. To ensure all replicas have identical state, the replicas must execute all requests in the same order and all requests must produce the same result on all replicas.

7 Replication Models …  Virtual Synchrony: model is used when group of processes cooperate to coordinate actions. programs running in a network organize themselves into process groups. Messages are sent to groups instead of specific processes. Each message is delivered to all group members. Every group member sees the same events (group membership changes and incoming messages) in the same order..

8 Replication Management & Issues  Issues: Mechanism to keep replicas consistent Replica placement  Placement of replica servers: best location to place server  Content replication: best server to place content

9 Replica-server placement 1.Place servers such that average distance between server and its clients is minimal.  Disadvantage: High complexity. Too many locations to inspect. 2.Alternative solution: Identify a region where a collection of nodes access the same content and internode latency is low. Select the most demanding regions( the one with the most nodes). One of the nodes in such a region act as replica server.

10 Content replication & placement  Three different types of replicas logically organized as:

11 Content replication & placement…  Permanent replicas: Process/machine always having a replica the initial set of replicas that constitute a distributed data store Created by the data store owner The data store can be replicated across a cluster of servers at a single location or across a number of geographically dispersed servers (called mirror sites ). the number of permanent replicas is small

12 Content replication & placement…  Server-initiated replicas: Process that can dynamically host a replica on request of another server in the data store replicas created in order to enhance the performance of the system Created at the request of the data store owner, often placed on servers maintained by others Server ‐ initiated replicas are placed close to large concentrations of clients Dynamic replication algorithms are used to decide where to place content

13 Content replication & placement…  Client-initiated replicas: Process that can dynamically host a replica on request of a client temporary copies created by clients to improve their access times to the data (commonly known as client caches )

14 Content distribution Deals with propagation of updated content to the relevant replica servers. Three possible propagations:  Propagate only an invalidation/notification of an update along with the part of data that has been updated.  Transferring modified data among replicas.  Propagate the update operation to other copies. None of the approaches are best. Depends on available bandwidth and read-to-write ratio at replicas.

15 Push protocol  Push protocol: Server-initiated approach Update is propagated regardless of whether target asks for it. Multicasting is used. E.g. A server that decides to push its updates to a number of other servers simply uses a single multicast group to send its updates.

16 Pull Protocol Client-initiated approach Client requests to be updated Unicasting is used. Only a single client or server requests its copy to be updated.

17 Leases  dynamically switch between pulling and pushing using leases  Lease is a contract during which the server will keep pushing updates to the client until lease expires.  When a client is interested in receiving updates from the server, it requests a lease  When a lease expires, the client must poll the server for updates, or it can renew its lease  Adaptive leases: Lease expiration will depend on system behavior.

18 Adaptive Leases  Age-based leases: Objects that have not changed for long, will not change in the near future. Such leases will be long lasting.  Renewal-frequency based leases: The more often a client requests a specific object, the expiration time will be longer for the client.  State-based leases: The more loaded a server is, the expiration time becomes shorter.

19 Summary & Future Work  Replica management involves keeping replicas consistent and for this periodic updates need to be propagated across the system.  There is a need to determine what, where and by whom update is propagated.  Not all replicas need to be updated immediately.  Finally, a choice can be made to either push updates to all or update can be pulled from one replica to another.  Future work:  Currently research for replica management is on building multi-layered replica management systems to improve write performance.  Asynchronous update.  Maintains replica consistency using version number  Recovery strategy for failing replica points

20 References  https://en.wikipedia.org/wiki/Replication_(computing) https://en.wikipedia.org/wiki/Replication_(computing  https://vowi.fsinf.at/images/b/bc/TU_Wien- Verteilte_Systeme_VO_(Göschka)_-_Tannenbaum- distributed_systems_principles_and_paradigms_2nd_edition.pdf  http://www.mpi-sws.org/~druschel/courses/ds/labs/lab-8.html http://www.mpi-sws.org/~druschel/courses/ds/labs/lab-8.html  https://people.cs.pitt.edu/~mosse/cs2510/class- notes/replication.pdf https://people.cs.pitt.edu/~mosse/cs2510/class- notes/replication.pdf  http://web.cs.iastate.edu/~cs554/NOTES/Ch7-3.pdf http://web.cs.iastate.edu/~cs554/NOTES/Ch7-3.pdf  http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6120992 &newsearch=true&queryText=replica%20management%20in%20dis tributed%20system

21 THANK YOU…


Download ppt "Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems."

Similar presentations


Ads by Google