DSF - Data Sharing Facility

2
3.10.2016 DSF Data Sharing Facility http://www.research.ibm.com/haifa/projects/systems/dsf.html 1/2 Israel Home | Products & services | Support & downloads | My account Select a country IBM Research Home IBM Haifa Labs Home DSF Data Sharing Facility Storage Research Project Homepage · Publications · zFS The next Generation · Contact Information Feedback DSF Data Sharing Facility Data Sharing Facility (DSF) is an experimental project to build a serverless file system that distributes all aspects of file and storage management over cooperating machines interconnected by a fast switched network. DSF is aimed at building a system that would scale from several to several hundred machines using commodity components. The first prototype is based on a cluster of NT workstations connected by a Fast Ethernet of 100Mbps; DSF will be perceived by each workstation as a native file system (i.e., a file system driver in NT terminology). DSF contains four types of entities: Clients, File Managers, Storage Managers, and Logical Volumes. When configured together over a fast network, these entities provide a global memory cache, distributed file management, and distributed storage repository. DSF Client – runs on some workstation and provides access to DSF files and directories. The DSF Client maintains a memory cache of data blocks accessed by applications on the Client workstation. The Client accepts file system requests from user programs, sends data to Storage Managers on writes, forwards reads to File Managers on cache misses, and receives replies from Storage Managers or other Clients. It also answers forwarding requests from File Managers by sending data to other Clients. DSF File Manager – manages the metadata and cache consistency for a subset of DSF files. To provide scalable service, DSF splits the management of its files among several File Managers. The Manager of a file controls two sets of information about the file: cache consistency state and file structure metadata blocks. Together, these structures allow the File Manager to track all copies of the file's data blocks. The File Manager can thus forward Client read requests to other Clients, thereby implementing cooperative client caching. DSF Storage Manager – stores and maintains data and metadata blocks on its local disks. The Storage Manager reacts to requests from File Managers by supplying data to Clients that have initiated I/O operations. DSF Storage Managers contain the intelligence to support DSF Logical Volumes. DSF Logical Volume – consists of a number of logical disks that span multiple Storage

Transcript of DSF - Data Sharing Facility

Page 1: DSF - Data Sharing Facility

3.10.2016 DSF Data Sharing Facility

http://www.research.ibm.com/haifa/projects/systems/dsf.html 1/2

Israel

Home | Products & services | Support & downloads | My account

Select a country

IBM Research Home

IBM Haifa Labs Home

DSF DataSharingFacility

Storage Research

Project Homepage

· Publications

· zFS The nextGeneration

· Contact Information

Feedback

DSF Data Sharing FacilityData Sharing Facility (DSF) is an experimental project to build a serverless file system thatdistributes all aspects of file and storage management over cooperating machinesinterconnected by a fast switched network.

DSF is aimed at building a system that would scale from several to several hundredmachines using commodity components. The first prototype is based on a cluster of NTworkstations connected by a Fast Ethernet of 100Mbps; DSF will be perceived by eachworkstation as a native file system (i.e., a file system driver in NT terminology).

DSF contains four types of entities: Clients, File Managers, Storage Managers, and LogicalVolumes. When configured together over a fast network, these entities provide a globalmemory cache, distributed file management, and distributed storage repository.

DSF Client – runs on some workstation and provides access to DSF files and directories.The DSF Client maintains a memory cache of data blocks accessed by applications on theClient workstation. The Client accepts file system requests from user programs, sends datato Storage Managers on writes, forwards reads to File Managers on cache misses, andreceives replies from Storage Managers or other Clients. It also answers forwardingrequests from File Managers by sending data to other Clients.

DSF File Manager – manages the metadata and cache consistency for a subset of DSF files.To provide scalable service, DSF splits the management of its files among several FileManagers. The Manager of a file controls two sets of information about the file: cacheconsistency state and file structure metadata blocks. Together, these structures allow the FileManager to track all copies of the file's data blocks. The File Manager can thus forwardClient read requests to other Clients, thereby implementing cooperative client caching.

DSF Storage Manager – stores and maintains data and metadata blocks on its local disks.The Storage Manager reacts to requests from File Managers by supplying data to Clientsthat have initiated I/O operations. DSF Storage Managers contain the intelligence to supportDSF Logical Volumes.

DSF Logical Volume – consists of a number of logical disks that span multiple Storage

Page 2: DSF - Data Sharing Facility

3.10.2016 DSF Data Sharing Facility

http://www.research.ibm.com/haifa/projects/systems/dsf.html 2/2

Manager machines and provides an abstract interface to disk storage with a rich set ofrecovery properties. The logical volume hides the physical distribution of its logical disks sothat new disks and Storage Managers can be dynamically incorporated into the systemwithout interrupting system operation. This increases storage capacity and throughput. Thestorage system may be further reconfigured by moving disks between Storage Managers tomatch different working environments and workloads.

The logical volume supports a rich set of block operations, such as: read, write,allocateAndWrite, allocate, and delete. Furthermore, special care is taken when handlingmetadata blocks, e.g., inodes and indirect blocks. Metadata block operations include softwrite, softallocate, and softdelete, which can be committed or aborted later on, and thus beefficiently used for multidisk atomic transactions.

The performance and scalability of DSF is affected by several important design features:Separation of storage from file managementCaching and metadata management can be done on a machine that is different fromthe one that stores the data.Dynamic distribution of file management across multiple machines at file opentimeThis offers superior performance and scalability compared to traditional serverbased file systems. Changing the management machine for a particular file can bedone for load balancing, or in response to system configuration changes such asmachine addition or deletion. This also enables dynamic load balancing of thesystem at file open time and avoids the problems associated with static loadbalancing at discrete time intervals.Cooperative cachingClient machine memories are treated as one global cooperative cache. Clients areable to access blocks cached by other clients, thereby reducing the load on StorageManagers and reducing the cost of local cache misses.Lack of dedicated machinesThis eliminates source bottlenecks. Any machine in the system, including one thatruns user applications, can be made responsible for storing, caching, and managingany piece of data or metadata. Furthermore, any machine in the system can assumethe responsibilities of a failed component.Freedom to configure the file systemDSF can be configured to match different system environments depending onmachine memories and CPU speeds. DSF can have multiple configurations rangingfrom a "small office system", where the file system is shared between two machinesand only one is responsible for storing the data, to a large "clustered system" ofhundreds of machines such as GPFS, where each machine is made responsible forstoring, caching and managing the file system.Use of logical volumesDSF logical volume can be used to dynamically reconfigure the storage subsystemwithout interrupting file system operation. The support for transactional operationsover multiple disks improves the performance of file operations that require atomicmultiblock writes, such as file sync and directory operations. The newallocateAndWrite technique removes the need to allocate a new block prior to itswriting to disk.

About IBM | Privacy | Legal | Contact