CHAPTER 6: DISTRIBUTED FILE SYSTEMS



Similar documents
Concurrency control. Concurrency problems. Database Management System

Course Content. Transactions and Concurrency Control. Objectives of Lecture 4 Transactions and Concurrency Control

Chapter 11 Distributed File Systems. Distributed File Systems

Database Replication Techniques: a Three Parameter Classification

COSC 6374 Parallel Computation. Parallel I/O (I) I/O basics. Concept of a clusters

Concurrency Control. Chapter 17. Comp 521 Files and Databases Fall

Database Replication with Oracle 11g and MS SQL Server 2008

(Pessimistic) Timestamp Ordering. Rules for read and write Operations. Pessimistic Timestamp Ordering. Write Operations and Timestamps

Geo-Replication in Large-Scale Cloud Computing Applications

Distributed Software Systems

Transaction Management Overview

Distributed Database Systems

Concurrency Control. Module 6, Lectures 1 and 2

Distributed Architectures. Distributed Databases. Distributed Databases. Distributed Databases

Database Tuning and Physical Design: Execution of Transactions

We mean.network File System

Recovery Theory. Storage Types. Failure Types. Theory of Recovery. Volatile storage main memory, which does not survive crashes.

Operating Systems File system mounting, sharing, and protection. File System Mounting

Distributed Databases

Database Concurrency Control and Recovery. Simple database model

Postgres-R(SI): Combining Replica Control with Concurrency Control based on Snapshot Isolation

Last class: Distributed File Systems. Today: NFS, Coda

COSC 6374 Parallel Computation. Parallel I/O (I) I/O basics. Concept of a clusters

Lecture 18: Reliable Storage

Data Replication and Snapshot Isolation. Example: Cluster Replication

Ph.D. Thesis Proposal Database Replication in Wide Area Networks

The ConTract Model. Helmut Wächter, Andreas Reuter. November 9, 1999

Lecture 7: Concurrency control. Rasmus Pagh

Topics. Distributed Databases. Desirable Properties. Introduction. Distributed DBMS Architectures. Types of Distributed Databases

Network File System (NFS) Pradipta De

Chapter 11: File System Implementation. Operating System Concepts with Java 8 th Edition

Goals. Managing Multi-User Databases. Database Administration. DBA Tasks. (Kroenke, Chapter 9) Database Administration. Concurrency Control

Transactional properties of DBS

COS 318: Operating Systems

Roadmap DB Sys. Design & Impl. Detailed Roadmap. Paper. Transactions - dfn. Reminders: Locking and Consistency

Chapter 18: Database System Architectures. Centralized Systems

Distributed File Systems

Chapter 12 File Management

Take An Internal Look at Hadoop. Hairong Kuang Grid Team, Yahoo! Inc

10.2 THE CODA FILE SYSTEM

IBRIX Fusion 3.1 Release Notes

Distributed Transactions

Project Group High- performance Flexible File System

Transactions. SET08104 Database Systems. Napier University

Distributed Data Management

CAP Theorem and Distributed Database Consistency. Syed Akbar Mehdi Lara Schmidt

INTRODUCTION TO DATABASE SYSTEMS

Udai Shankar 2 Deptt. of Computer Sc. & Engineering Madan Mohan Malaviya Engineering College, Gorakhpur, India

Distributed File Systems. Chapter 10

Transactions: Definition. Transactional properties of DBS. Transactions: Management in DBS. Transactions: Read/Write Model

Introduction to Database Systems. Module 1, Lecture 1. Instructor: Raghu Ramakrishnan UW-Madison

COS 318: Operating Systems. File Layout and Directories. Topics. File System Components. Steps to Open A File

Distributed File Systems

Dr Markus Hagenbuchner CSCI319. Distributed Systems

Concurrency Control: Locking, Optimistic, Degrees of Consistency

A Reputation Replica Propagation Strategy for Mobile Users in Mobile Distributed Database System

ZooKeeper. Table of contents

Principles of Distributed Database Systems

New method for data replication in distributed heterogeneous database systems

XtreemFS Extreme cloud file system?! Udo Seidel

Escrow techniques for mobile sales and inventory applications

Transactions and the Internet

Recovery and the ACID properties CMPUT 391: Implementing Durability Recovery Manager Atomicity Durability

Comp 5311 Database Management Systems. 16. Review 2 (Physical Level)

File Systems Management and Examples

MIRROR: A State-Conscious Concurrency Control Protocol for. Replicated Real-Time Databases

File System Design and Implementation

Distributed File Systems

Seminar Presentation for ECE 658 Instructed by: Prof.Anura Jayasumana Distributed File Systems

Centralized Systems. A Centralized Computer System. Chapter 18: Database System Architectures

Outline. Definition. Name spaces Name resolution Example: The Domain Name System Example: X.500, LDAP. Names, Identifiers and Addresses

Chapter 13 File and Database Systems

Chapter 13 File and Database Systems

RAID Storage, Network File Systems, and DropBox

OPERATING SYSTEMS FILE SYSTEMS

Transactions and Concurrency Control. Goals. Database Administration. (Manga Guide to DB, Chapter 5, pg , ) Database Administration

Transactions and Recovery. Database Systems Lecture 15 Natasha Alechina

Distributed File Systems. NFS Architecture (1)

Cluster Computing. ! Fault tolerance. ! Stateless. ! Throughput. ! Stateful. ! Response time. Architectures. Stateless vs. Stateful.

THE BCS PROFESSIONAL EXAMINATIONS BCS Level 6 Professional Graduate Diploma in IT. April 2009 EXAMINERS' REPORT. Network Information Systems

Coda: A Highly Available File System for a Distributed Workstation Environment

Load Balancing and High availability using CTDB + DNS round robin

On the Ubiquity of Logging in Distributed File Systems

F1: A Distributed SQL Database That Scales. Presentation by: Alex Degtiar (adegtiar@cmu.edu) /21/2013

Network Attached Storage. Jinfeng Yang Oct/19/2015

Web DNS Peer-to-peer systems (file sharing, CDNs, cycle sharing)

Distributed File Systems

Distributed Data Stores

Topics. Introduction to Database Management System. What Is a DBMS? DBMS Types

Avoid a single point of failure by replicating the server Increase scalability by sharing the load among replicas

Segmentation in a Distributed Real-Time Main-Memory Database

Introduction to Database Management Systems

Products for the registry databases and preparation for the disaster recovery

Real Time Database Systems

Transcription:

CHAPTER 6: DISTRIBUTED FILE SYSTEMS Chapter outline DFS design and implementation issues: system structure, access, and sharing semantics Transaction and concurrency control: serializability and concurrency control protocols Replicated data management: one-copy serializability and coherency control protocols Why is DFS important and interesting? It is one of the two important components (process and ) in any distributed computation. It is a good example for illustrating the concept of transparency and client/server model. File sharing and data replication present many interesting research problems.

Structure of and access to a system directory service authorization service name resolution, add and deletion of s capability and / or access control list service transaction basic concurrency and replication management read / write s and get / set attributes system service device, cache, and block management File Service Interactions directory service authorization service Servers clients service system service

File: sequential, direct, indexed, indexed-sequential File System: flat, hierarchical File Structures Disk Blocks Disk Blocks Disk Blocks FCB FCB Dir Entry FAT other attr other attr other attr Direct Primary Indirect FAT approach Disk Blocks Disk Blocks FCB other attr Dir Entry other attr Secondary Indirect Sequential 3

Mounting protocols and NFS Explicit mounting Boot mounting Auto mounting root root chow export OS paper book DFS DSM security mount local remote client server Stateful and stateless servers Opened s and their clients File descriptors and handles Current position pointers Mounting information Lock status Session keys Cache or buffer 4

Semantics of sharing in DFS time space remote access cache access down/up load access simple RW no true sharing coherency control coherency control transaction concurrency control coherency and concurrency coherency and concurrency session not applicable not applicable ignore sharing sharing Unix semantics - currentness Transaction semantics - consistency Session semantics - efficiency replication Write policies: write-through and write back cache coherence control: write-invalidate and write-update Version control (immutable s): ignore conflict, resolve version conflict, resolve serializability conflict 5

Transaction and concurrency control Coordinator clients transaction manager scheduler object manager objects Communication Participants clients transaction manager scheduler object manager objects TM SCH OM transaction processing system (TPS) Transaction manager (TM) Scheduler (SCH) Object manager (OM) atomicity All or none: TM, two-phase commit Indivisible (serializable): SCH, concurrency control protocols Atomic update: OM, replica management 6

Serializability IF the interleaved execution of transactions is to be equivalent to a serial execution in some order, then all conflicting operations in the interleaved serializable schedule must also be executed in the same order at all object sites. t 0 : bt Write A=00, Write B=0 et t : bt Read A, Read B, : Write sum in C, : Write diff in D et t : bt Read A, Read B, 3: Write diff in C, 4: Write sum in D et Sched Interleave Log in C Log in D Result (C,D) PL Timestamp,, 3, 4 W = 0 W = 80 (80, 0) feasible feasible W = 80 W = 0 consistent 3, 4,, W = 80 W = 0 (0, 80) feasible t aborts W = 0 W = 80 consistent and restarts 3, 3,, 4 W = 0 W = 80 (80, 0) not feasible W = 80 W = 0 consistent feasible 4 3,, 4, W = 80 W = 0 (0, 80) not t aborts W = 0 W = 80 consistent feasible and restarts 5, 3, 4, W = 0 W = 0 (80, 80) not cascade W = 80 W = 80 inconsistent feasible aborts 6 3,,, 4 W = 80 W = 80 (0, 0) not t aborts W = 0 W = 0 inconsistent feasible and restarts Banzai Timestamp Protocol. Get timestamp TS from TM at bt. When performing an operation on object O, if (read and W R(O) < T S) {do read; RD(O) = max(rs(o), T S)} if (write and max(rd(o), W R(O) < T S) {do write; W R(O) = T S} else abort 3. if any writes were performed before aborting, any other transactions that read the value written by that write must also be aborted 7

Concurrency control protocols Two-phase locking locking and shrinking phases of requesting and releasing objeccts concurrency versus serializability rolling abort, strict two-phase locking Timestamp ordering Read abort RD OK wait waiting reads Write abort WR T min tentative writes do tentative write RD remove transaction from waiting list Abort WR T min RD cannot commit a waiting read Commit WR T min abort transactions May delay transaction completion (waiting reads) Prevents cascading abort (reads wait until tentative write resolved) 8

Optimistic concurrency control Execution phase Validation phase:. Validation of transaction t i is rejected if TV i < TV k. All transactions must be serialized with respect to TV.. Validation of transaction t i is accepted if it does not overlap with any t k. t i is already serialized with respect to t k. 3. The execution phase of t i overlaps with the update phase of t k, and t k completes its update phase before TV i. Validation of t i is accepted if R i W k = φ. 4. The execution phase of t i overlaps with the validation and update phases of t k, and t k completes its execution phase before TS i. Validation of t i is accepted if R i W k = φ and W i W k = φ. Update phase reject accept if no accept if no r w & w w r w TVi conflict TVi conflict TVi accept TVi execution TVk validation update TS i phase phase phase 9

Data and replication Architecture of a replica manager clients FSA clients FSA FSA : File Service Agent : Replica Manager read operations Read-one-primary Read-one Read-quorum write operation Write-one-primary Write-all Write-all-available Write-quorum Write-gossip 0

One-copy serializability The execution of transactions on replicated objects is equivalent to the execution of the same transactions on nonreplicated objects. Some approaches: read-one-primary/write-one-primary read-one/write-all read-one/write-all-available failures Failures can cause problems with one-copy serializability. For example: t 0 : bt W(X) W(Y ) et t : bt R(X) W(Y ) et t : bt R(Y ) W(X) et t : bt R(X a ) (Y d fails) W(Y c ) et t : bt R(Y d ) (X a fails) W(X b ) et

Quorum voting From read-one/write-all-available to read-quorum/write quorum:. Write-write conflict: W(d) > V (d).. Read-write conflict : R(d) + W(d) > V (d). 6 7 6 7 8 8 8 8 8 : s : Witnesses 6, 7, 8 are version numbers. R ( d ) = 5 W( d ) = 5 Question: What happens if the read contacts a witness (dashed box) instead of the with the actual version 8 copy of the object?

Gossip update propagation Lazy update propagation: read-one/write-gossip Basic gossip protocol: read/overwrite Causal order gossip protocol: read/modify-update Client FSA TS f < TSi TS i < TSj Read update Gossip Gossip Read modify updates value value value V V R R V R update update update log L log L log L u, 000 u, 00 Gossip u, 00 3 Gossip 3 V = 00 R = 00 update log L : r = 00, u = 000 V = 000 R = 0 update log L : r = 0, u r = 00, u = 00 = 000 V = 000 R = update log L : r 3 = 0, u 3 = 00 r = 0, u = 00 r = 00, u = 000 3