Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Christoph Dorn
Distributed Systems Group, Vienna University of Technology c.dorn@infosys.tuwien.ac.at http://www.infosys.tuwien.ac.at/staff/dorn Slides adapted from Maarten van Steen, VU Amsterdam, steen@cs.vu.nl
Contents
Chapter 01: Introduction 02: Architectures 03: Processes 04: Communication 05: Naming 06: Synchronization 07: Consistency & Replication 08: Fault Tolerance 09: Security 10: Distributed Object-Based Systems 11: Distributed File Systems 12: Distributed Web-Based Systems 13: Distributed Coordination-Based Systems
DS WS 2013 2 / 14
Upload/download model
DS WS 2013
3 / 14
NFS client
NFS server
Network
DS WS 2013
4 / 14
Essence VFS provides standard le system interface, and allows to hide difference between accessing local or remote le system. Question Is NFS actually a le system?
DS WS 2013
5 / 14
v3 Yes No Yes Yes Yes Yes Yes Yes Yes No No Yes Yes Yes Yes Yes Yes Yes
v4 No Yes Yes No No No Yes Yes No Yes Yes Yes Yes Yes Yes Yes Yes Yes
Description Create a regular le Create a nonregular le Create a hard link to a le Create a symbolic link to a le Create a subdirectory Create a special le Change the name of a le Remove a le from a le system Remove an empty subdirectory Open a le Close a le Look up a le by means of a name Read the entries in a directory Read the path name in a symbolic link Get the attribute values for a le Set one or more le-attribute values Read the data contained in a le Write data to a le
6 / 14
a a a b
b b
c c c d
d d
e e e
Whole-file distribution
a c d e
a c d
b c e
a d
b e
DS WS 2013
File-striped system 7 / 14
The Google solution Divide les in large 64 MB chunks, and distribute/replicate chunks across many servers: The master maintains only a (le name, chunk server) table in main memory minimal I/O Files are replicated using a primary-backup scheme; the master is kept out of the loop
DS WS 2013 8 / 14
2. Write "c"
File server
1. Write "c"
DS WS 2013
9 / 14
(b)
last write operation can only be implemented for remote access models in which there is only a single copy of the le Transaction semantics: the le system supports transactions on a single le issue is how to allow concurrent access to a physically distributed le Session semantics: the effects of read and write operations are seen only by the client that has opened (a local copy) of the le what happens when a le is closed (only one client may actually win)
DS WS 2013
10 / 14
DS WS 2013
11 / 14
DS WS 2013
12 / 14
Server
File f
Open(WR) Client B
Close Time
Note By making use of transactional semantics, it becomes possible to further improve performance.
DS WS 2013 13 / 14
Client A
Server S2
Broken network
Client B
Main issue Ensure that concurrent updates are detected: Each client has an Accessible Volume Storage Group (AVSG): is a subset of the actual VSG. Version vector CVVi (f )[j ] = k Si knows that Sj has seen version k of f . Example: A updates f S1 = S2 = [+1, +1, +0]; B updates f S3 = [+0, +0, +1].
DS WS 2013 14 / 14