摘要
Non-Volatile Memory(NVM) offers byte-addressability and persistency. Because NVM can be plugged into memory and provide low latency, it offers a new opportunity to build new database systems with a single-layer storage design. A single-layer NVM-Native DataBase(N2 DB) provides zero copy and log freedom. Hence, all data are stored in NVM and there is no extra data duplication and logging during execution. N2 DB avoids complex data synchronization and logging overhead in the two-layer storage design of disk-oriented databases and in-memory databases. Garbage Collection(GC) is critical in such an NVM-based database because memory leaks on NVM are durable. Moreover, data recovery is equally essential to guarantee atomicity, consistency, isolation, and durability properties. Without logging, it is a great challenge for N2 DB to restore data to a consistent state after crashes and recoveries. This paper presents the GC and data recovery mechanisms for N2 DB. Evaluations show that the overall performance of N2 DB is up to 3:6 higher than that of InnoDB. Enabling GC reduces performance by up to 10%,but saves storage space by up to 67%. Moreover, our data recovery requires only 0:2% of the time and half of the storage space of InnoDB.
基金
supported by the National Key Research & Development Program of China (No. 2016YFB1000504)
the National Natural Science Foundation of China (Nos. 61877035, 61433008, 61373145, and 61572280)。