Flexible and Adaptable Buffer Management Techniques for Database Management Systems

The problem of buffer management in database management systems is concerned with the efficient main memory allocation and management for answering database queries. Previous works on buffer allocation are based either exclusively on the availability of buffers at runtime or on the access patterns of queries. In this paper, we first propose a unified approach for buffer allocation in which both of these considerations are taken into account. Our approach is based on the notion of marginal gains which specify the expected reduction in page faults by allocating extra buffers to a query. Then, we extend this approach to support adaptable buffer allocation. An adaptable buffer allocation algorithm automatically optimizes itself for the specific query workload. To achieve this adaptability, we propose using runtime information, such as the load of the system, in buffer allocation decisions. Our approach is to use a simple queuing model to predict whether a buffer allocation will improve the performance of the system. Thus, this paper provides a more theoretical basis for buffer allocation. Simulation results show that our methods based on marginal gains and our predictive methods consistently outperform existing allocation strategies. In addition, the predictive methods have the added advantage of adjusting their allocation to changing workloads. >

[1]  E. Kauder History of Marginal Utility Theory , 1965 .

[2]  Hong-Tai Chou Buffer management of database systems , 1985 .

[3]  Tomás Lang,et al.  Database buffer paging in virtual storage systems , 1977, TODS.

[4]  Irving L. Traiger,et al.  Evaluation Techniques for Storage Hierarchies , 1970, IBM Syst. J..

[5]  Alfonso F. Cardenas Analysis and performance of inverted data base structures , 1975, CACM.

[6]  Stephen W. Sherman,et al.  Performance of a database manager in a virtual memory system , 1976, TODS.

[7]  Giovanni Maria Sacco,et al.  Buffer management in relational database systems , 1986, TODS.

[8]  S. B. Yao,et al.  Approximating block accesses in database organizations , 1977, CACM.

[9]  Stavros Christodoulakis,et al.  Implications of certain assumptions in database performance evauation , 1984, TODS.

[10]  Christos Faloutsos,et al.  Predictive Load Control for Flexible Buffer Allocation , 1991, VLDB.

[11]  Philip S. Yu,et al.  Integration of Buffer Management and Query Optimization in Relational Database Environment , 1989, VLDB.

[12]  FaloutsosChristos,et al.  Flexible buffer allocation based on marginal gains , 1991 .

[13]  Giovanni Maria Sacco,et al.  A Mechanism for Managing the Buffer Pool in a Relational Database System Using the Hot Set Model , 1982, VLDB.

[14]  Christos Faloutsos,et al.  Flexible buffer allocation based on marginal gains , 1991, SIGMOD '91.

[15]  Kishor S. Trivedi Probability and Statistics with Reliability, Queuing, and Computer Science Applications , 1984 .

[16]  Michael Stonebraker,et al.  The design and implementation of INGRES , 1976, TODS.

[17]  Wolfgang Effelsberg,et al.  Principles of database buffer management , 1984, TODS.