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

Slides:



Advertisements
Similar presentations
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Advertisements

Replication. Topics r Why Replication? r System Model r Consistency Models r One approach to consistency management and dealing with failures.
Consistency and Replication Chapter 7 Part II Replica Management & Consistency Protocols.
Serverless Network File Systems. Network File Systems Allow sharing among independent file systems in a transparent manner Mounting a remote directory.
EEC 688/788 Secure and Dependable Computing Lecture 12 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Distributed Systems Fall 2010 Replication Fall 20105DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Database Replication techniques: a Three Parameter Classification Authors : Database Replication techniques: a Three Parameter Classification Authors :
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
EEC 688/788 Secure and Dependable Computing Lecture 12 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 12 Wenbing Zhao Department of Electrical and Computer Engineering.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Distributed Systems Fall 2009 Replication Fall 20095DV0203 Outline Group communication Fault-tolerant services –Passive and active replication Highly.
Internet Networking Spring 2002 Tutorial 13 Web Caching Protocols ICP, CARP.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Client-Centric.
Chapter 12 Distributed Database Management Systems
CS 425 / ECE 428 Distributed Systems Fall 2014 Indranil Gupta (Indy) Lecture 18: Replication Control All slides © IG.
Definition of terms Definition of terms Explain business conditions driving distributed databases Explain business conditions driving distributed databases.
Lecture 12 Synchronization. EECE 411: Design of Distributed Software Applications Summary so far … A distributed system is: a collection of independent.
Database Replication. Replication Replication is the process of sharing information so as to ensure consistency between redundant resources, such as software.
CSC 456 Operating Systems Seminar Presentation (11/13/2012) Leon Weingard, Liang Xin The Google File System.
1 6.4 Distribution Protocols Different ways of propagating/distributing updates to replicas, independent of the consistency model. First design issue.
Module 12: Designing High Availability in Windows Server ® 2008.
Consistency And Replication
CH2 System models.
Replication and Consistency. Reference The Dangers of Replication and a Solution, Jim Gray, Pat Helland, Patrick O'Neil, and Dennis Shasha. In Proceedings.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved Chapter 7 Consistency.
Database Systems: Design, Implementation, and Management Tenth Edition Chapter 12 Distributed Database Management Systems.
CS 5204 (FALL 2005)1 Leases: An Efficient Fault Tolerant Mechanism for Distributed File Cache Consistency Gray and Cheriton By Farid Merchant Date: 9/21/05.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Consistency and Replication Chapter 6. Release Consistency (1) A valid event sequence for release consistency. Use acquire/release operations to denote.
Consistency and Replication. Replication of data Why? To enhance reliability To improve performance in a large scale system Replicas must be consistent.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
1 ACTIVE FAULT TOLERANT SYSTEM for OPEN DISTRIBUTED COMPUTING (Autonomic and Trusted Computing 2006) Giray Kömürcü.
Oracle's Distributed Database Bora Yasa. Definition A Distributed Database is a set of databases stored on multiple computers at different locations and.
IM NTU Distributed Information Systems 2004 Replication Management -- 1 Replication Management Yih-Kuen Tsay Dept. of Information Management National Taiwan.
第5讲 一致性与复制 §5.1 副本管理 Replica Management §5.2 一致性模型 Consistency Models
Eduardo Gutarra Velez. Outline Distributed Filesystems Motivation Google Filesystem Architecture The Metadata Consistency Model File Mutation.
Client-Server Model of Interaction Chapter 20. We have looked at the details of TCP/IP Protocols Protocols Router architecture Router architecture Now.
Replication (1). Topics r Why Replication? r System Model r Consistency Models – How do we reason about the consistency of the “global state”? m Data-centric.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
Distributed Systems CS Consistency and Replication – Part IV Lecture 21, Nov 10, 2014 Mohammad Hammoud.
Computer Science Lecture 14, page 1 CS677: Distributed OS Last Class: Concurrency Control Concurrency control –Two phase locks –Time stamps Intro to Replication.
Chap 7: Consistency and Replication
Replication (1). Topics r Why Replication? r System Model r Consistency Models r One approach to consistency management and dealing with failures.
CHAPTER 7 CLUSTERING SERVERS. CLUSTERING TYPES There are 2 types of clustering ; Server clusters Network Load Balancing (NLB) The difference between the.
Distributed Systems CS Consistency and Replication – Part IV Lecture 13, Oct 23, 2013 Mohammad Hammoud.
Consistency and Replication Chapter 6 Presenter: Yang Jie RTMM Lab Kyung Hee University.
Antidio Viguria Ann Krueger A Nonblocking Quorum Consensus Protocol for Replicated Data Divyakant Agrawal and Arthur J. Bernstein Paper Presentation: Dependable.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Distributed Computing Systems Replication Dr. Sunny Jeong. Mr. Colin Zhang With Thanks to Prof. G. Coulouris,
1 Prof. Orhan Gemikonakli Module Leader: Prof. Leonardo Mostarda Università di Camerino Distributes Systems – Consistency (2) Prof. Orhan Gemikonakli -
Replication & Fault Tolerance CONARD JAMES B. FARAON
CS6320 – Performance L. Grewe.
Distributed Systems – Paxos
Internet Networking recitation #12
Replication Middleware for Cloud Based Storage Service
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT -Sumanth Kandagatla Instructor: Prof. Yanqing Zhang Advanced Operating Systems (CSC 8320)
Outline Announcements Fault Tolerance.
7.1. CONSISTENCY AND REPLICATION INTRODUCTION
Middleware for Fault Tolerant Applications
Active replication for fault tolerance
Distributed Systems CS
Lecture 21: Replication Control
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Replica Placement Model: We consider objects (and don’t worry whether they contain just data or code, or both) Distinguish different processes: A process.
Outline Review of Quiz #1 Distributed File Systems 4/20/2019 COP5611.
Lecture 21: Replication Control
Presentation transcript:

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

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

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

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

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

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.

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..

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

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.

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

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

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

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 )

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.

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.

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.

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.

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.

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

References   Verteilte_Systeme_VO_(Göschka)_-_Tannenbaum- distributed_systems_principles_and_paradigms_2nd_edition.pdf   notes/replication.pdf notes/replication.pdf   &newsearch=true&queryText=replica%20management%20in%20dis tributed%20system

THANK YOU…