Distributed File
System
Introduction
 File – collection of data with user view(structure) and a physical
view (blocks)
 DFS – distributed storage and users – provides transparency of
location, access and migration of files – uses replicas for efficiency
and fault tolerance
 Enables programs to store and access remote files as local ones
 Two types
 Andrew File system (AFS)
 Sun Network File system (NFS)
 File systems are abstractions that enables users to read, manipulate
and organize dat. Data is stored in units known as files in a
hierarchical tree – nodes are directories
 Enables uniform view – independent of underlying storage devices
(floppy to hard drives and flash memory cards)
 Goals:
 Network transparency – access rremote files
 High availability – easy to access files irrespective of their physical
location
Characteristics
 Organization, storage, retrieval, naming sharing and protection of
files
 File – Data + attributes (length, timestamp, file type)
 Directory – provides mapping from names to internal file identifier
 Modules
 Directory module – File names to File IDS
 File module – File IDS to particular files
 Access control module – checks permission for file operation
 Block module – Access and allocates disk blocks
 Device module – Disk IO and buffering
Requirements
1. Transparency
 Structure
 Access
 Naming
 Replication
2. User mobility
3. Performance
4. Scalability
5. High Availability
6. High reliability
7. Security
File Service Architecture
 Clear separation of main concerns providing access to files is
obtained by structuring the file service as three components – Flat
file service, directory file service, client module
 Flat file service
 Implementation of operations on the content of the file
 UFID – Unique File Identifier – refer to files in all requests for flat
file operations
 UFID – long sequence of bits chosen
 Create file – new UFID will be generated and returns UFID
 Directory service
 Mapping between text names for the files and their UFIDs
 Get UFID by quoting the text name to directory service
 It supports functions needed to generate directories, add files to
directories
 Client module
 Runs on each computer and provides integrated service as a
single API to application programs.
 Holds information about the network locations of flat file,
directory server processes
 Achieves better performance through implementation of cache of
recently used file blocks
Flat file service operations
Read (fileId, I, n) -> data
Write (fileId, I, data)
Create() -> fileId
Delete (field)
GetAttributes(FileId) -> attr
SetAttributes(FileId, attr)
Terminologies
 Access control
 Hierarchic file system
 File group

Distributed file system

  • 1.
  • 2.
    Introduction  File –collection of data with user view(structure) and a physical view (blocks)  DFS – distributed storage and users – provides transparency of location, access and migration of files – uses replicas for efficiency and fault tolerance  Enables programs to store and access remote files as local ones  Two types  Andrew File system (AFS)  Sun Network File system (NFS)  File systems are abstractions that enables users to read, manipulate and organize dat. Data is stored in units known as files in a hierarchical tree – nodes are directories
  • 3.
     Enables uniformview – independent of underlying storage devices (floppy to hard drives and flash memory cards)  Goals:  Network transparency – access rremote files  High availability – easy to access files irrespective of their physical location
  • 4.
    Characteristics  Organization, storage,retrieval, naming sharing and protection of files  File – Data + attributes (length, timestamp, file type)  Directory – provides mapping from names to internal file identifier  Modules  Directory module – File names to File IDS  File module – File IDS to particular files  Access control module – checks permission for file operation  Block module – Access and allocates disk blocks  Device module – Disk IO and buffering
  • 6.
    Requirements 1. Transparency  Structure Access  Naming  Replication 2. User mobility 3. Performance 4. Scalability 5. High Availability 6. High reliability 7. Security
  • 7.
    File Service Architecture Clear separation of main concerns providing access to files is obtained by structuring the file service as three components – Flat file service, directory file service, client module
  • 8.
     Flat fileservice  Implementation of operations on the content of the file  UFID – Unique File Identifier – refer to files in all requests for flat file operations  UFID – long sequence of bits chosen  Create file – new UFID will be generated and returns UFID
  • 9.
     Directory service Mapping between text names for the files and their UFIDs  Get UFID by quoting the text name to directory service  It supports functions needed to generate directories, add files to directories
  • 10.
     Client module Runs on each computer and provides integrated service as a single API to application programs.  Holds information about the network locations of flat file, directory server processes  Achieves better performance through implementation of cache of recently used file blocks
  • 11.
    Flat file serviceoperations Read (fileId, I, n) -> data Write (fileId, I, data) Create() -> fileId Delete (field) GetAttributes(FileId) -> attr SetAttributes(FileId, attr)
  • 12.
    Terminologies  Access control Hierarchic file system  File group