NVMTFS: A Non-Volatile Memory Adaptive File System for
Tiered Storage System
Shiyong Liu
†‡
Zhichao Cao
‡
Zhongwen Guo
†
Guohua Wang
§‡
Xupeng Wang
†‡
Zhijin Qiu
¶
Xukun Qin
‡
†
Ocean University of China
‡
University of Minnesota, Twin Cities
§
South China University of Technology
¶
Qilu University of Technology (Shandong Academy of
Sciences)
Abstract
Tiered storages have been widely used for large scale
data to achieve high read/write performance while keep-
ing low costs. However, most of their managements are
implemented in block level and it is transparent to file
system and high level applications, which cannot have
clean and accurate information about data usage and tem-
perature. Thereby there may be low performance and
high resources usage.
In this paper, we propose a new file system NVMTFS,
which is NVM adaptive and achieves file system level
data management for tiered storage. NVM replaces
DRAM as the whole system memory, such that part
of the data and metadata can be permanently stored on
NVM without flushing back to tiered storage. NVMTFS
uses NVM not only as memory, but also a ghost tier
to store data, there will be no data duplication between
NVM and tiered storage. More accurate and less mi-
gration operation can be achieved in NVMTFS by us-
ing NVM as one more tier and no cache tier in the sys-
tem. We have designed NVMTFS and described its sys-
tem architecture, file system layout and data operation.
NVMTFS shows its great potential for tiered storage
to store big data while guaranteeing read/write perfor-
mance. In the future, the prototype will implemented
within a Linux Kernel and its performance can be com-
pared with other file system such as EXT3, btrfs, NILFS2
and NVMFS.
1 Introduction
During the past several decades, computer systems
have traditionally used DRAM as a volatile memory,
HDD and Flash as persistent storage. The difference
of their latencies has, however, led to large differences
of their interfaces [4, 13]. Moreover, DRAM is volatile
and system may suffer high reliability issue when power
fails or system crashes. To address this issue, operation
system, file system and applications implement a lot of
mechanisms to protect data in DRAM, including peri-
odical flushing, transaction operation, journaling and so
forth, but those reliability oriented mechanisms decrease
system performance and space utilization efficiency.
Recent years, several different types of non-volatile
memory (NVM) have been developed and might be
promising for main memory and storage in computer sys-
tems, such as NAND flash [2], resistive RAM (ReRAM)
[3], spin transfer torque RAM (STT-RAM) [11] and
phase change memory (PCM) [16]. Table 1 presents
the properties of representative memory and storage de-
vices. The NVM devices provide many benefits over ex-
isting devices for file system storage, from caches, main
memory (shown in Figure 1(a)) to secondary storage.
When NVM is used as main memory, there is no need to
worry about data lose in memory as power fails or system
crashes. The protection mechanisms for data reliability
should be redesigned to improve I/O performance. On
the other hand, the NVMs write speed and endurance is
much lower than DRAM which should be carefully con-
sidered in the new file system.
In a word, the emergence of NVM provides more pos-
sibilites for big data storage. Meanwhile, tiered storage
is a good solution for big data, as it takes comprehen-
sive tradeoff of performance and cost. It integrates high
performance but expensive NVRAM or SSD maintain-
ing hot data with cheap and slower HDD or SWD for
cold data. There are several research works have been
done to design and implement tiered storage for high
performance [18, 19]. It is a trend that tiered storage
will gradually dominate the storage industry against tra-
ditional single-type-device storage system, as its promis-
ing trade-off between performance and cost.
Nowdays, most of the tiered storage systems are man-
aged in block level, so that a continuous storage space
can be allocated to high level applications, and they do
not need to care about data pre-fetch or migration is-
sues, and there is no need to modify those applications
to adapt tiered storage as well. However, block level has
201
2018 4th International Conference on Big Data Computing and Communications
978-1-5386-8021-6/18/$31.00 ©2018 IEEE
DOI 10.1109/BIGCOM.2018.00039