Let’s Talk About Storage & Recovery Methods for Non-Volatile Memory Database Systems
Proceedings ACM SIGMOD, Melbourne, Victoria, Australia, May 31-June 4, 2015.
Joy Arulraj, Andrew Pavlo, Subramanya R. Dulloor*
Carnegie Mellon University
* Intel Labs
The advent of non-volatile memory (NVM) will fundamentally change the dichotomy between memory and durable storage in database management systems (DBMSs). These new NVM devices are almost as fast as DRAM, but all writes to it are potentially persistent even after power loss. Existing DBMSs are unable to take full advantage of this technology because their internal architectures are predicated on the assumption that memory is volatile. With NVM, many of the components of legacy DBMSs are unnecessary and will degrade the performance of data intensive applications. To better understand these issues, we implemented three engines in a modular DBMS testbed that are based on different storage management architectures: (1) in-place updates, (2) copy-on-write updates, and (3) log-structured updates. We then present NVMaware variants of these architectures that leverage the persistence and byte-addressability properties of NVM in their storage and recovery methods. Our experimental evaluation on an NVM hardware emulator shows that these engines achieve up to 5.5 higher throughput than their traditional counterparts while reducing the amount of wear due to write operations by up to 2. We also demonstrate that our NVM-aware recovery protocols allow these engines to recover almost instantaneously after the DBMS restarts.
FULL PAPER: pdf