A Prolegomenon on OLTP Database Systems for Non-Volatile Memory
Justin A. DeBrabant, Joy James Prabhu Arulraj, Andrew Pavlo, Michael R Stonebraker, Stanley B. Zdonik, Subramanya R. Dulloor · 2015
The design of a database management system’s (DBMS) architec-ture is predicated on the target storage hierarchy. Traditional disk-oriented systems use a two-level hierarchy, with fast volatile mem-ory used for caching, and slower, durable device used for primary storage. As such, these systems use a buffer pool and complex con-currency control schemes to mask disk latencies. Compare this to main memory DBMSs that assume all data can reside in DRAM, and thus do not need these components. But emerging non-volatile memory (NVM) technologies require us to rethink this dichotomy. Such memory devices are slightly slower than DRAM, but all writes are persistent, even after power loss. We explore two possible use cases of NVM for on-line trans-action processing (OLTP) DBMSs. The first is where NVM com-pletely replaces DRAM and the other is where NVM and DRAM coexist in the system. For each case, we compare the performance of a disk-oriented DBMS with a memory-oriented DBMS using two OLTP benchmarks. We also evaluate the performance of dif-ferent recovery algorithms on these NVM devices. Our evalua-tion shows that in both storage hierarchies, memory-oriented sys-tems are able to outperform their disk-oriented counterparts. How-ever, as skew decreases the performance of the two architectures converge, showing that neither architecture is ideally suited for an NVM-based storage hierarchy. 1.