August 2, 2021
Offloading functionalities to the storage device for greater speeds
In most computers, 'files' can be opened with a single click, but behind this click are a set of highly orchestrated processes that convert these files to and from the digital form. There is a complex interface between the file system software and the device where files are stored. The read/write speeds that we ultimately perceive (how long it takes to open and save files) are closely related to the inner workings of this interface.
Nowadays, the performance and price of solid-state drives (SSD) has made them the go-to option in many applications, replacing the traditional hard disk drive (HDD). However, the available interfaces between file systems and physical drives aren't able to keep up with the modern storage devices. In the legacy block interface, which is widely used today, the host file system has to 'transform' fixed-sized blocks of bits into the files and vice versa when we read or write data. Because of the incredible speeds of SSDs, keeping accurate track of the correspondence between these blocks and the abstraction of files has created a series of bottlenecks in the file system side. In other words, even if we were to keep improving the performance of SSDs, we might hardly notice an improvement in the actual read/write speeds of files.
Fortunately, at Daegu Gyeongbuk Institute of Science and Technology (DGIST), Korea, scientists led by Assistant Professor Sungjin Lee are looking for ways to tackle this issue. In their latest study, which was presented at the 15th USENIX Symposium on Operating Systems Design and Implementation, the team reported a strategy by which these bottlenecks can be overcome. Their approach is a novel take on a paradigm called key–value storage, by which a file is not managed as a combination of equally sized blocks, but as variable-length objects accessed by uniquely assigned keys.
They combined a file system (software) and a specially designed SSD (hardware) to create 'KEVIN.' The main benefit of KEVIN over previous key–value storage approaches is that it offloads many important functionalities of the file system directly into the storage device side. "Our strategy let us make the file system design much lighter and solved multiple issues with traditional file systems, achieving speedups of roughly 68% on average for realistic workloads," remarks Dr. Lee.
Overall, the study aptly illustrates the glaring problems of currently used file systems and offers an innovative solution. "File systems are a fundamental piece of system software that stores and manages all files from users and applications, and we envision that our research may provide a faster and more efficient computing environment for everyone," highlights Dr. Lee.