UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Storage system design for fast nonvolatile memories Wires, Jacob Taylor


Nonvolatile memories are transforming the data center. Over the past decade, enterprise flash has evolved to provide a thousand times more random-access throughput than mechanical disks, with a thousand times lower latency and ten times more capacity. These remarkable improvements completely reshape software concerns, allowing storage systems to take a more central role in dynamic resource management, but demanding that they do so with significantly lower overheads. This thesis presents several novel software techniques for managing high-density storage systems. In particular, it describes a probabilistic approach to workload modeling that provides guaranteed error bounds while dramatically reducing memory overheads relative to existing state-of-the-art algorithms. It also documents the design and implementation of a storage controller that leverages dynamic constraint satisfaction techniques to continually optimize data and network flow placement for performance, efficiency, and scale. These advances are presented within a broader design framework that provides a flexible and robust platform for managing all aspects of storage resource allocation. Informed by experiences and insights gained over six years of building an enterprise scale-out storage appliance, it is based on three key ideas: light-weight abstraction to decouple logical resources from physical hardware, online analysis to capture workload requirements, and dynamic actuation to adjust allocations as requirements change. Together, these capabilities allow storage software to dynamically adapt to changing workload behavior and allow stored data to play a more active role in data center computing.

Item Media

Item Citations and Data


Attribution-NonCommercial-NoDerivatives 4.0 International