replication libby rasnick christopher newport university cpsc 550 spring 2003
Post on 21-Dec-2015
213 views
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.