Database architectures for new hardware

Few years ago, DBMS stored data on disks and cached recently used data in main memory buffer pools, while designers worried about improving I/O performance and maximizing main memory utilization. Today, however, databases live in multi-level memory hierarchies that include disks, main memories, and several levels of processor caches. Recent research shows that all levels of the underlying computer hardware and devices directly influence database performance. This paper aims at (a) explaining why database performance depends on modern processor and memory microarchitectures, (b) surveying and contrasting research on the topic over the past decade, and (c) discussing future research challenges.