Low-overhead decision support for dynamic buffer reallocation

  • Authors:
  • Karsten Schmidt;Sebastian Bächle

  • Affiliations:
  • Dept. of Computer Science, University of Kaiserslautern, Kaiserslautern, Germany;Dept. of Computer Science, University of Kaiserslautern, Kaiserslautern, Germany

  • Venue:
  • Computer Science - Research and Development
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

Effective I/O buffering is a performance-critical task in database management systems. Accordingly, systems usually employ various special-purpose buffers to align, e.g., device speed, page size, and replacement policies with the actual data and workload. However, such partitioning of available buffer memory results in complex optimization problems for database administrators and also in fragile configurations which quickly deteriorate on workload shifts. Reliable forecasts of I/O costs enable a system to evaluate alternative configurations to continuously optimize its buffer memory allocation at runtime. So far, all techniques proposed for the prediction of buffer performance focus solely on hit ratio gains for increased buffer sizes to identify buffers which promise the greatest benefit. These approaches, however, assume that their forecast allows to extrapolate the effect for buffer downsizing, too. As we will show, this comes along with a severe risk of wrong tuning decisions, which may heavily impact system performance. Thus, we emphasize the importance of reliably forecasting the penalty to expect for shrinking buffers in favor of others. We explore the use of lightweight extensions for widely used buffer algorithms to perform on-the-fly simulation of buffer performance of smaller and larger buffer sizes simultaneously. Furthermore, we present a simple cost model and demonstrate how to compose these concepts into a self-tuning component for dynamic buffer reallocation.