Cargando…

Further implementation of the user space file system based on CastorFS and Xrootd

The LHC (Large Hadron Collider) experiments use a mass storage system for recording petabytes of experimental data. This system is called CASTOR[1] (CERN Advanced STORage manager) and it is powerful and convenient for many use cases. However, it is impossible to use standard tools and scripts straig...

Descripción completa

Detalles Bibliográficos
Autor principal: Jiao, Manjun
Lenguaje:eng
Publicado: 2011
Materias:
Acceso en línea:http://cds.cern.ch/record/1380326
Descripción
Sumario:The LHC (Large Hadron Collider) experiments use a mass storage system for recording petabytes of experimental data. This system is called CASTOR[1] (CERN Advanced STORage manager) and it is powerful and convenient for many use cases. However, it is impossible to use standard tools and scripts straight away for dealing with the files in the system since the users can access the data just in the way of using command-line utilities and parsing their output. Thus a complete POSIX filesystem – CastorFS[2] is developed based on the FUSE[3] (File System in Userspace) and two CASTOR I/O libraries-RFIO (Remote File I/O) library and NS (Name Server) library. Although it is applied successfully, it has serious limitation of wide application because the I/O protocols it relies on are very old. Each time the CASTOR side receives the calling for accessing data files from the user side, the load of the CASTOR side system will increase quickly even out of its upper bound and the system would crash. Besides that, those two protocols provide very primitive mechanism for authentication and the data transmitting rate is very low. Furthermore, since the CastorFS is implemented in C language, it can hardly be extended by using the other well functioned libraries. Hence, it needs to be rewritten in C++ with the implementation of caching and the Xrootd[4] (eXtended Root Daemon) which is developed by SLAC/CERN to provide a high performance, scalable fault tolerant access to data. The new system implemented the LRU (Least Recently Used) algorithm as the mechanism to manage the cache. We use FUSE as the tool to provide the interfaces for the virtual filesystem. By implementing the actual filesystem function with Xrootd Posix APIs, we provided a filesystem which can effectively ease the server load, provide a steady data transmitting service and provide a good data protection mechanism.