(3)BASE - Using Abstraction to Improve Fault Tolerance
-
Upload
paulo-ferreira -
Category
Documents
-
view
217 -
download
0
Transcript of (3)BASE - Using Abstraction to Improve Fault Tolerance
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
1/14
BASE: Using Abstraction to Improve Fault Tolerance
Rodrigo Rodrigues , Miguel Castro , and Barbara Liskov MIT Laboratory for Computer Science
200 Technology Sq., Cambridge MA 02139, USA Microsoft Research Ltd.
1 Guildhall St., Cambridge CB2 3NH, UK
[email protected], [email protected], [email protected]
ABSTRACT
1. INTRODUCTION
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
2/14
2. THE BASE TECHNIQUE
2.1 Methodology
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
3/14
2.1.1 Applicability
2.2 The BASE Library
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
4/14
-
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
5/14
execute
propose_value/check_value
get_obj/put_objshutdown/restart
Client
BASE
Client
BASE
Replica
Conf.
Wrapper
Original
Implementation
invoke
BASEProtocol
modify
3. EXAMPLES
3.1 File System
3.1.1 Abstract Specification
Andrewbenchmark
kernel NFS client
relay
replicationlibrary
replica 1
unmodified NFS daemon 1
replicationlibrary
conformancewrapper
stateconversion
unmodified NFS daemon n
replicationlibrary
conformancewrapper
stateconversion
replica n
client
3.1.2 Conformance Wrapper
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
6/14
3.1.3 State Conversions
TypeGen. #Parent
Attrs
Data
0
FILE12
DIR10
FILE10
DIR1-1
t1
other attrs
FREE0
1 2 3 4
TypeGen. #Parentfhandletstamps
DIR1-1
h1t1
FILE10
h2t2
DIR10
h3t3
FREE0
0 1 2 3
FILE12
h4t4
root
f1
f2
d1
Abstract State:
Conformance Representation: Concrete State:
4
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
7/14
-
-
3.1.4 Proactive Recovery
3.2 Object-Oriented Database
3.2.1 System Overview
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
8/14
-
3.2.2 Abstract Specification
3.2.3 Conformance Wrapper
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
9/14
3.2.4 State Conversions
4. EVALUATION
4.1 File System Overhead
4.1.1 Experimental Setup
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
10/14
4.1.2 Homogeneous Results
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
11/14
4.1.3 Heterogeneous Results
4.2 Object-Oriented Database Overhead
4.2.1 Experimental Setup
4.2.2 OO7 Results
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
12/14
0
5
10
15
20
T1 T6 T1 T6
Thor BASE-Thor
Elapsedtime(s)
Commit
Traversal
0
5
10
15
20
T2a T2b T2a T2b
Thor BASE-Thor
Elapsedtime(s)
Commit
Traversal
4.3 Code Complexity
5. RELATED WORK
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
13/14
6. CONCLUSION
7. ACKNOWLEDGMENTS
8. REFERENCES
-
8/2/2019 (3)BASE - Using Abstraction to Improve Fault Tolerance
14/14