This website is under development. If you come accross any issues, please report them to Konstantinos Kanellis (kkanellis@cs.wisc.edu) or Yannis Chronis (chronis@google.com).

Resource-Adaptive Query Execution with Paged Memory Management

Authors:
Riki Otaki, Jun Hyuk Chang, Charles Benello, Aaron J Elmore, Goetz Graefe
Abstract

Existing database systems typically employ demand driven resource allocation with static limits on the amount of resources allocated for query execution. However, in the cloud computing paradigm, where many different database workloads share the same physical resources, demand-driven approaches can lead to resource thrashing, while static limits can lead to under-utilization of resources. Under such circumstances, adaptively reallocating resources to operators in a query plan can improve resource utilization, performance, and reduce the operational costs. This paper explores the challenges of adaptive resource management, including estimating resource requirements of queries and dynamically redistributing resources to operators. We propose the use of the buffer pool pages for query execution to enable memory reallocation and query context switching seamlessly. Additionally, we propose an optimization technique to reduce the overhead of accessing the shared buffer pool memory.