The ubiquitous fight between Read, Update, and Memory overheads
in access methods for modern data systems.
Database researchers have been building data-access methods for decades, yet the same core question appears again and again: how do we minimize read cost, update cost, and memory or storage overhead at the same time?
As workloads diversify and hardware grows more heterogeneous and complex, small changes in environment can force major redesigns of access methods. What used to be a local tuning problem is now a central systems-design problem.
The RUM Conjecture frames this tension directly. It proposes that if we place strong bounds on any two of the three overheads, read (R), update (U), and memory (M), then the third overhead inherits a hard lower bound that cannot be pushed further down.
RUM names the three overheads at the heart of access-method design: read, update, and memory. The conjecture captures the fact that improving any two of them inevitably puts pressure on the third.
Instead of viewing access methods as isolated structures, the RUM Conjecture offers a design lens for reasoning about tradeoffs across data systems.
A simple but powerful framing for how access methods trade off reads, writes, and memory.
The RUM Conjecture gives a way to map existing access methods and a path toward future RUM-adaptive designs.
The read-update-memory design space can be viewed as a three-dimensional region or a projected triangle of tradeoffs.
Bounding any two of read, update, and memory overheads implies a hard lower bound on the third.
Existing structures already embody different RUM balances depending on whether they optimize reads, writes, or space.
Future systems should dynamically tune how they access data based on hardware, workload, and application needs.
This project is fostered by collaboration with EPFL, Switzerland and Facebook, Inc.
It has been supported by the Swiss National Science Foundation through a Postdoc Mobility Fellowship.