Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT -Sumanth Kandagatla Instructor: Prof. Yanqing Zhang Advanced Operating Systems (CSC 8320)

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.
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 :
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #13 Web Caching Protocols ICP, CARP.
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.
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.
11 SERVER CLUSTERING Chapter 6. Chapter 6: SERVER CLUSTERING2 OVERVIEW  List the types of server clusters.  Determine which type of cluster to use for.
Presented by: Alvaro Llanos E.  Motivation and Overview  Frangipani Architecture overview  Similar DFS  PETAL: Distributed virtual disks ◦ Overview.
Distributed Data Stores – Facebook Presented by Ben Gooding University of Arkansas – April 21, 2015.
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.
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.
Distributed File System By Manshu Zhang. Outline Basic Concepts Current project Hadoop Distributed File System Future work Reference.
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.
第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.
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.
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems.
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.
Reliable multicast Tolerates process crashes. The additional requirements are: Only correct processes will receive multicasts from all correct processes.
1 Prof. Orhan Gemikonakli Module Leader: Prof. Leonardo Mostarda Università di Camerino Distributes Systems – Consistency (2) Prof. Orhan Gemikonakli -
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 12: Planning and Implementing Server Availability and Scalability.
CS6320 – Performance L. Grewe.
Affinity Depending on the application and client requirements of your Network Load Balancing cluster, you can be required to select an Affinity setting.
Distributed Systems – Paxos
Peer-to-peer networking
Internet Networking recitation #12
Consistency and Replication
Replication Middleware for Cloud Based Storage Service
7.1. CONSISTENCY AND REPLICATION INTRODUCTION
Replication Improves reliability Improves availability
Active replication for fault tolerance
Distributed Systems CS
Outline Announcements Lab2 Distributed File Systems 1/17/2019 COP5611.
Lecture 21: Replication Control
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Introduction to Cyberspace
Distributed Systems CS
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 -Sumanth Kandagatla Instructor: Prof. Yanqing Zhang 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 Computation/Service Replication Space : executed on separate devices Time: executed repeatedly on single device Reliability and Performance

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

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

Consistency Models

Consistency Models DATA-CENTRIC CONSISTENCY MODELS Continuous Consistency Consistent Ordering of Operations CLIENT-CENTRIC CONSISTENCY MODELS Eventual Consistency Monotonic Reads Monotonic Writes Read Your Writes Writes Follow Reads

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 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 Place servers such that average distance between server and its clients is minimal. Disadvantage: High complexity. Too many locations to inspect. 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…

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 Control & Pull Control Push protocol: Server-initiated approach Update is propagated regardless of whether target asks for it. Multicasting is used. 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.

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 https://en.wikipedia.org/wiki/Replication_(computing) http://research.iaun.ac.ir/pd/faramarz_safi/pdfs/UploadFile_9481.pdf https://atscaleconference.com/videos/amazon-aurora-an-under-the-hood-view-of-a-cloud-scale-relational-database-service/ http://www.mpi-sws.org/~druschel/courses/ds/labs/lab-8.html 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%20distributed%20system

Thanks! ANY QUESTIONS? You can find me at skandagatla1@student.gsu.edu