skip to main content
Predictive database buffer management strategies: an empirical approach
Publisher:
  • University of Pittsburgh
  • Computer Science 322 Alumni Hall Pittsburgh, PA
  • United States
Order Number:Order No. GAX88-16992
Bibliometrics
Skip Abstract Section
Abstract

For major enterprises to fully utilize their digitally encoded information resources, computing technology must rapidly service the transactions which implement database query facilities. Since commercial computing environments normally have databases which exceed the related host processor's memory (real or virtual) by several orders of magnitude, one is encouraged to investigate methods of improving transaction throughput with more efficient buffer management algorithms. The work reported in this area suggests that buffer management software can be improved by exploiting knowledge of the underlying database reference behavior. Although a number of database reference studies have been performed over the last decade, the findings generally do not agree and appear conflicting in some cases. To address this issue, we have conducted an extensive empirical study of the database reference behavior generated by transactions operating in large commercial online DBMS environments. Our results indicate that database reference patterns span a spectrum which includes widely varying degrees of locality and sequentiality. Furthermore, transactions in such environments tend to exhibit nearly identical database reference behavior over extended periods of time. Recognizing this, we introduce a buffer management strategy, termed the resident set approach, which exploits the highly predictable database reference behavior that we observed.To evaluate the resident set strategy, we have formulated one specific algorithm where database blocks may be selectively prefetched while buffer faults are serviced. Fetch and replacement decisions for this algorithm are guided by locality and sequentiality measures pre-computed from historical database reference traces. The algorithm strives to improve transaction throughput by reducing either space-time costs associated with the database buffer allocation, or transaction execution times. Although intuition may suggest the contrary, prefetching database blocks for sequential reference patterns was found generally not beneficial with respect to decreasing space-time costs. During sequential reference epochs, we demonstrate that space-time costs are minimized by using demand fetching with single frame buffer allocations. For computing environments rich in memory, our buffer management simulations also show that prefetching blocks related to highly sequential reference patterns can dramatically decrease transaction execution time and thereby improve throughput.

Contributors
  • Oracle Corporation

Recommendations