This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
The Cache Assignment Problem and Its Application to Database Buffer Management
November 1996 (vol. 22 no. 11)
pp. 827-838

Abstract—Given N request streams and LN LRU caches, the cache assignment problem asks to which cache each stream should be assigned in order to minimize the overall miss rate. An efficient solution to this problem is provided, based on characterizing each stream using the stack reference model and characterizing the interaction of the streams using a bursty stream model. It is shown that for Bernoulli (purely random) mixing of streams, the optimal cache assignment is to have one cache per stream. But in practice streams are mixed in a way that is much "burstier" than can be represented by the Bernoulli model. Therefore a method is presented for superposition of bursty streams. The performance of the methods developed for bursty stream superposition and cache assignment are tested using trace data obtained from the database system DB2. The resulting cache assignment recommendations are then applied to the DB2 system, and considerable performance improvement is found to result.

[1] A. Aho, J. Hopcroft, and J. Ullman, Data Structures and Algorithms.Reading, Mass: Addison-Wesley, 1983.
[2] K.P. Brown, "Goal Oriented Memory Allocation in Database Management Systems," PhD thesis, Univ. of Wisconsin, Madison, 1995, http://ww.cs.wisc.edu/brown/brown.html.
[3] E.G. Coffman and P.J. Denning,Operating Systems Theory, Prentice-Hall Inc., Englewood Cliffs, N.J., 1973.
[4] A. Dan, P.S. Yu, and J. -Y. Chung, “Characterization of Database Access Pattern for Analytic Prediction of Buffer Hit Probability,” Very Large Database (VLDB) J., vol. 4, pp. 127-154, Jan. 1995.
[5] IBM Systems J., vol. 23, no. 2, 1984.
[6] I.J. Haikala, "Cache Hit Ratios with Geometric Task Switch Intervals," Proc. 11th Ann. Symp. Computer Architectures, pp. 364-371,Ann Arbor, Mich., June, 1984.
[7] T. Johnson and D. Shasha, "2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm," Proc. 20th Int'l Conf. Very Large Data Bases, VLDB '94, pp. 439-450,Santiago de Chile, Chile, Sept.12-15, 1994.
[8] H. Levy and R.J.T. Morris, "Exact Analysis of Bernoulli Superposition of Streams into a Least Recently Used Cache," IEEE Trans. on Software Eng., vol. 21, no. 8, pp. 682-688, Aug. 1995.
[9] R.L. Mattson, J. Gecsei, D.R. Slutz, and I.L. Traiger, "Evaluation Techniques for Storage Hierarchies," IBM Systems J., vol. 9, no. 2, pp. 78-117, 1970.
[10] R.L. Mattson Personal communication.
[11] R.J.T. Morris,“Analysis of superposition of streams into a cachebuffer,” ACM Sigmetrics Conf. on Measurement and Modeling of Computer Systems,Santa Clara, Calif., May 1993.
[12] E.J. O'Neil, P.E. O'Neil, and G. Weikum, "The LRU-k Page Replacement Algorithm for Database Disk Buffering," Proc. 1993 ACM Sigmod Int'l Conf. Management of Data, ACM Press, New York, 1993, pp. 297-306.
[13] A.J. Smith, "Cache Memories," ACM Computing Surveys, Vol. 14, 1982, pp. 473-540.
[14] H.S. Stone, J. Turek, and J.L. Wolf, "Optimal Partitioning of Cache Memory," IEEE Trans. Computers, vol. 41, no. 9, pp. 1,054-1,068, Sept. 1992.
[15] J.Z. Teng and R.A. Gumaer, "Managing IBM Database 2 Buffers to Maximize Performance," IBM Systems J., vol. 23, no. 2, 1984.

Index Terms:
Cache, LRU, memory hierarchy, stack depth processes, database performance.
Citation:
Hanoch Levy, Ted G. Messinger, Robert J.T. Morris, "The Cache Assignment Problem and Its Application to Database Buffer Management," IEEE Transactions on Software Engineering, vol. 22, no. 11, pp. 827-838, Nov. 1996, doi:10.1109/32.553701
Usage of this product signifies your acceptance of the Terms of Use.