Projects

Non-volatile Memory Databases

The design of a database management system’s (DBMS) architecture is predicated on the target storage hierarchy. Traditional disk-oriented systems use a two-level hierarchy, with fast volatile memory used for caching, and slower, durable device used for primary storage. As such, these systems use a buffer pool and complex concurrency 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. These devices promise to overcome the disparity between processor performance and DRAM storage capacity limits that encumber data-centric applications.

We are studying NVMs to understand their performance characteristics in the context of big data systems and build the groundwork for new DBMS architectures.

J. Arulraj, A. Pavlo, and P. Menon, "Bridging the Archipelago Between Row-Stores and Column-Stores for Hybrid Workloads," in Proceedings of the 2016 International Conference on Management of Data, 2016, pp. 583-598. [PDF][BIBTEX]