replication libby rasnick christopher newport university cpsc 550 spring 2003

31
Replication Replication Libby Rasnick Libby Rasnick Christopher Newport Christopher Newport University University CPSC 550 CPSC 550 Spring 2003 Spring 2003

Post on 21-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

ReplicationReplication

Libby RasnickLibby Rasnick

Christopher Newport UniversityChristopher Newport University

CPSC 550CPSC 550

Spring 2003Spring 2003

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

2

Table of ContentsTable of ContentsDefinitionDefinitionHistoryHistoryGoalsGoalsFeaturesFeaturesStructureStructureHow to UseHow to UseApplicationsApplicationsBenefits and IssuesBenefits and IssuesCost of ReplicationCost of ReplicationSignificant PointsSignificant PointsSummarySummaryReferencesReferences

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

3

Defining replicationDefining replication

“the maintenance of copies of data at multiple computers as a technique for automatically maintaining the availability of data despite server failures”

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

4

Defining replicationDefining replication

“the maintenance of copies of data at multiple computers as a technique for automatically maintaining the availability of data despite server failures”

“a key to the effectiveness of distributed systems in that it provides enhanced performance, high availability and fault tolerance”

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

5

HistoryHistory

Initially, stored data back-ups (tape)

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

6

HistoryHistory

Initially, stored data back-ups (tape)

With distributed systems, partial or entire copies of a node’s data are stored by another node

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

7

HistoryHistory

Initially, stored data back-ups (tape)

With distributed systems, partial or entire copies of a node’s data are stored by another node

Recent development, peer-to-peer resource trading (community-based redundancy system)

~ Napster

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

8

GoalsGoals

“to improve a service’s performance, to increase its availability, or to make it fault-tolerant.”

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

9

GoalsGoals

“to improve a service’s performance, to increase its availability, or to make it fault-tolerant.”

enhances distributed systems by restricting or eliminating downtime

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

10

GoalsGoals

“to improve a service’s performance, to increase its availability, or to make it fault-tolerant.”

enhances distributed systems by restricting or eliminating downtime

fundamental trade-off in fault-tolerance: consistency v. availability (and performance)

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

11

FeaturesFeatures

Passive

master replication manager allocates requests to slave managers

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

12

FeaturesFeatures

Passive

master replication manager allocates requests to slave managers

Active

requests are multicast to all replication managers and each replies independently

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

13

StructureStructureReplication system transaction steps [1]Step Name Description1 request FE issues a request for service to one or more

RMs2 coordination RMs communicate together to deliver consistent

results An ordering scheme must be applied to incoming requests. Common ordering schemes used: FIFO, casual,

and total.3 execution RM executes the request in a reversible manner4 agreement RMs agree on the effects of the request5 response RM(s) response sent to FE

FE must consolidated and forward to client.

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

14

How to Use (server/RM)How to Use (server/RM) Determine the number of servers & availability of data

Number of RMs (servers):

n servers, probability p of server access failure1-probability(all servers fail) = 1 - pn

Data availability (objects):

If f of f+1 servers crash, then 1 server is still operating &if up to f servers can exhibit Byzantine failures, then2f+1 servers would permit full function during most worst case scenarios

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

15

How to Use (server/RM)How to Use (server/RM) add RMs (as calculated)

ensure communication between RMs

install FEs to accommodate number of clients

follow five transaction steps: request, coordination, execution, agreement, and response

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

16

ApplicationsApplications

DNS servers

eases request bottlenecks

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

17

ApplicationsApplications

DNS servers

eases request bottlenecks

Community-based redundancy systems

propagated data alleviates pressure from server failures

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

18

ApplicationsApplications

DNS servers

eases request bottlenecks

Community-based redundancy systems

propagated data alleviates pressure from server failures

gossip, Bayou, Coda

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

19

Benefits and IssuesBenefits and Issues

Benefits

“selecting a nearby replica to serve an access request results in a shorter service time” [2]

reduced or eliminated down-time due to server failure

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

20

Benefits and IssuesBenefits and IssuesBenefits

“selecting a nearby replica to serve an access request results in a shorter service time” [2]

reduced or eliminated down-time due to server failure

Issues

location dependent

replica updating

cost of replication

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

21

Cost of Replication

What to charge for and when

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

22

Cost of Replication

What to charge for and when

Calculated per transaction

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

23

Cost of Replication

What to charge for and when

Calculated per transaction

Cost modeling

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

24

Cost of Replication

What to charge for and when

Calculated per transaction

Cost modeling

Cost Model AnalysisV – set of sites in a networkS – set in questionR – resident set

R = S V of copy-bearing sites

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

25

Significant PointsSignificant Points

Proportional cost based on number of accesses

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

26

Significant PointsSignificant Points

Proportional cost based on number of accesses

fee paid by the server for every access past a set maximum allotment of accesses

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

27

Significant PointsSignificant Points

Proportional cost based on number of accesses

fee paid by the server for every access past a set maximum allotment of accesses

rewards servers that perform good file maintenance (requesting a replica of a frequently accessed file)

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

28

Significant PointsSignificant Points

Proportional cost based on number of accesses

fee paid by the server for every access past a set maximum allotment of accesses

rewards servers that perform good file maintenance (requesting a replica of a frequently accessed file)

more of the cost of the replication system is absorbed by those servers that do not use it properly

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

29

SummarySummary Definition: maintaining copies of data in fault-

independent location

Goals: accessibility, fault-tolerance, consistency

Features: passive and active models

Structure: clients, front ends, replication managers

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

30

SummarySummaryHow to Use: request, coordination, execution,

agreement, response

Applications: DNS servers, Napster, gossip, Bayou, Coda

Benefits: increased data accessibility and fault-tolerance

Issues: data consistency and transparency, cost of replication

Libby Rasnick CPSC 550 Replication Case Study Christopher Newport University

31

ReferencesReferences[1] Coulouris, George, Dollimore, Jean, and Kindberg, Tim. Distributed Systems: Concepts and Design. Third Ed. New York: Addison Wesley. 2001.

[2] Levy, Eliezer and Silberschatz, Abraham. Distributed File Systems: Concepts and Examples. ACM Computing Surveys, 22(4): 321-374, December 1990.

[3] Cooper, Brian F. and Garcia-Molina, Hector. Peer-to-peer resource trading in a reliable distributed system. 1st International Workshop on Peer-to-Peer Systems, 11 November 2002.

[4] Goldweber, Michael and Johnson, Donald B. Minimizing Access Cost in Replicated Distributed Systems. Symposium on Principles of Distributed Computing: 56, 1996.

[5] Comer, Douglas E. Computer Networks and Internets. Second Ed. Upper Saddle River: Prentice Hall. 1999.