Cliffguard: A principled framework for finding robust database designs

B Mozafari, EZY Goh, DY Yoon - Proceedings of the 2015 ACM SIGMOD …, 2015 - dl.acm.org
Proceedings of the 2015 ACM SIGMOD international conference on management of …, 2015dl.acm.org
A fundamental problem in database systems is choosing the best physical design, ie, a
small set of auxiliary structures that enable the fastest execution of future queries. Almost all
commercial databases come with designer tools that create a number of indices or
materialized views (together comprising the physical design) that they exploit during query
processing. Existing designers are what we call nominal; that is, they assume that their input
parameters are precisely known and equal to some nominal values. For instance, since …
A fundamental problem in database systems is choosing the best physical design, i.e., a small set of auxiliary structures that enable the fastest execution of future queries. Almost all commercial databases come with designer tools that create a number of indices or materialized views (together comprising the physical design) that they exploit during query processing. Existing designers are what we call nominal; that is, they assume that their input parameters are precisely known and equal to some nominal values. For instance, since future workload is often not known a priori, it is common for these tools to optimize for past workloads in hopes that future queries and data will be similar. In practice, however, these parameters are often noisy or missing. Since nominal designers do not take the influence of such uncertainties into account, they find designs that are sub-optimal and remarkably brittle. Often, as soon as the future workload deviates from the past, their overall performance falls off a cliff, leading to customer discontent and expensive redesigns. Thus, we propose a new type of database designer that is robust against parameter uncertainties, so that overall performance degrades more gracefully when future workloads deviate from the past. Users express their risk tolerance by deciding on how much nominal optimality they are willing to trade for attaining their desired level of robustness against uncertain situations. To the best of our knowledge, this paper is the first to adopt the recent breakthroughs in the theory of robust optimization to build a practical framework for solving some of the most fundamental problems in databases, replacing today's brittle designs with a principled world of robust designs that can guarantee predictable and consistent performance.
ACM Digital Library