A Study on Distributed File Systems: an Example of Nfs, Ceph, Hadoop
Total Page:16
File Type:pdf, Size:1020Kb
A STUDY ON DISTRIBUTED FILE SYSTEMS: AN EXAMPLE OF NFS, CEPH, HADOOP 1MAHMUT UNVER, 2ATILLA ERGUZEN 1,2Computer Engineering, Kırıkkale University, Turkey E-mail: [email protected], [email protected] Abstract- Distributed File Systems (DFS), are systems used in both local network and wide area networks by using discs, storage areas and sources together. Nowadays, DFS makes possible operating big data, large-scale computings and transactions. The classifications are performed based on their working logics and architectures. These classifications were performed based on fault tolerance, replications, naming, synchronization and purpose of design. In this study, firstly the examinations on general design of DFSs were performed. Later, the results were discussed based on the advantages and disadvantages of Ceph and Hadoop and Network File Systems(NFS), commonly used in these days. Keywords- Distributed file system, Network file system (NFS), Hadoop, Ceph, fault tolerance, synchronization, replication, naming, operating system. I. INTRODUCTION DFSs were designed for different goals.For example, the purpose of Andrew File System (AFS) is DS Computer systems had large evolutions until now. which can support up to 5000 clients[5].Network File The first one is development of strong System (NFS) uses RPC Remote Procedure Call microprocessors on 1980s from 8 bit to 64 bit (RPC) communication model. RPC creates processing.The strengths of these computers were as intermediate layer between server and client. The mainframe computers and command processing costs client performs operations without knowing the were low at the same time. The second evolution is server's file systems.This method allows clients and commonly using local networks with high speed and servers with different file systems to run smoothly large scale nodes, This helped transferring 1 gigabit [6]. The purpose of Google File System (GFS) is to data in a second. At the end of these developments, work with big data.This is achieved by using a lot of distributed systems using multiple computers with low cost equipment.Another DFS that has a very high speed networks appeared rather than a strong different structure is XFS.It keeps very large files computer having one processor [1]. stable.Also, XFS does not have a generic server. The The first DFSs were developed on 1970s. These were entire file system is distributed over the clients.In storage system connected with FTP-like structure and Ceph DFS, it decomposes the metadata holding the they were not commonly used due to their limited data and data information.It replicates and increases storage spaces. L. Svoboda reported the first study on the system's fault tolerance. DFSs [2]and Svoboda developed various DFS in this year such as LOCUS, ACORN, SWALLOW, and In this study, DFSs were compared using specific XDFS. The studies continued on DFSs until now. classifications.Introduction of this work gives general Today’s DFSs are generally designed analogously to information about DFS. In the second part, general classical time sharing systems. These generally take architectural structures of DFS are mentioned. The base the UNIX file systems. The purpose of this basic concepts are explained in this section. In the system is combination of different computer files and third chapter, the classification criteria to be storage sytems [3]. compared are determined and explained.In the fourth DFSs process differently generated data on numeric chapter, currently active DFSs are described data platforms. It also performs this safely, efficiently according to the criteria specified in the third chapter. and rapidly. The need for rapid growth of data and In the last part, results and comparisons were rapid access to them has caused the growth of data performed. storage resources.The big increase on data created a new concept, BigData. At the same time, distributed II. GENERAL STRUCTURE OFDISTRIBUTED file systems are used to process big data and to FILE SYSTEMS perform operations quickly. Distributed file systems have emerged and are now being used effectively by The overall design goal of DFSs is to use less local cloud systems. A DFS file is stored on one or more hardware resources by sharing hardware computers, each of which is a server, and computers, resources.Besides the hardware advantages, it also called clients, access those files as if they were a has advantages in managing the files.This is also single file [4]. important in general design.For example, attention Proceedings of 54th The IRES International Conference, Florence, Italy, 28th-29th December 2016, ISBN: 978-93-86291-70-7 17 A Study on Distributed File Systems: An Example of NFS, CEPH, Hadoop has been paid to the level of transparency of the DSF master server keeps the metadata of the data. Other in order to overcome access problems caused by the servers are chunk servers.With more than one server, network [7]. While DFS is designed, they are Chuk can handle multiple clients at the same time. designed to provide file services to file system With this architecture, very large data can be clients.In this structure, clients use the interfaces to processed. An example of this architecture is the create files, delete files, read files, write files, perform Google File System (GFS). directory operations.The operating system used to perform these operations may be a distributed operating system or an intermediate layer between the operating system and the distributed file system[8]. Fig.3. Clustered-based architecture. The most important difference between DFS servers with a symmetric architecture is whether they create a file system on a distributed storage layer, or that all Fig.1. The Remote access model. files are stored in the nodes that are created.Thisarchitecture consists of three separate The architecture of DFS is generally based on 3 layers. The first layer is basic decentralizedlookup structures. These; facilities.The middle layer is a fully distributed block- -Server-Client based structures oriented storage layer. Top layer is a layer -Cluster based structures implementing afile system[1]. -Symmetricstructures III. CLASSIFICATION CRITERIA The Server-Client based architecture has been used extensively in DFS architecture. There are two DFSs have several classifications that affect server models in this architecture. qualities. The most important of these classifications are as follows: A.Fault Tolerance: When any part of the distributed site becomes corrupted, it is tolerated without being felt in the client [1]. B. Transparency: The distributed system looks like a single server by the client. It is the most important criterion affecting system design. C. Replication:More than one copy of the files used in the system is created and stored in the distributed system. Reliability is improved on this. If a copy is not accessible, the system continues to work using the Fig.2. Upload/download access model. other copy. D. Synchronization: There are copies of the file on The first is the remote access model. In this model, different servers. The change of client in one copy is the client provides an interface with various file also made in the other copies. operations.File operations are performed through this E. Naming: Names are all sources in the distributed interface. The server has to respond to this request. system. These are computers, services, users and The second model is the upload / download remote objects. Distributed system is to make a model.Unlike the client / server model, this model consistent naming of objects. If it does not provide, it downloads the file that the client will process, and will not access the objects. accesses the file locally.Server / Client model is used in NFS DFS. Nowadays, NFS is becoming the most IV. DISTRIBUTED FILE SYSTEMS used DFS [1]. 1.1. Network File System (NFS) Clustered based architecture also does not have a NFS was started to be developed in 1984. The project single server. There are multiple servers in the was developed by Sun Microsystems.It is the most system.One of the servers is the master server. The used and implemented DFS on UNIX systems. It uses Proceedings of 54th The IRES International Conference, Florence, Italy, 28th-29th December 2016, ISBN: 978-93-86291-70-7 18 A Study on Distributed File Systems: An Example of NFS, CEPH, Hadoop Remote Procedure Call (RPC) model for "Giant". It offers three different storage architectures communication [9]. at the same time. Those are Object-based storing, block-based storing, file system. The most important features of Ceph are reliability and scalability. Metadata is the data holding the information of the data. In general distributed systems, the metadata that holds the data and data information is located on separate servers. Data cannot be accessed when metadata is not available. Ceph does not need a metadata server.Instead of a metadata server, it uses an algorithm that determines the location of the print job. This algorithm is called CRUSH. Clients use this algorithm to determine and read the position of the dataset. With this algorithm, Fig.4. NFS architecture. there is no problem of not reaching the metadata. The latest version is NFS version 4. The basic design In Ceph DFS, more than one copy of the data is kept structure is the distributed execution of the classic as distributed on the serve. It performs replication Unix file system.Virtual file system is used. The with this way. virtual file system works like an intermediate layer. This allows clients to easily work with different file According to the workload measurements, Ceph has systems. The operating system is an interfaced call very good Input / Output performance. Ithas placed between calls and file system calls. More than scalability metadata management that allows up to one command can be sent from an RPC in the last 250,000 metadata transactions per second.