A prefetching technique for object-oriented databases

  • Nils Knafla
Object Orientation and The Internet
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1271)


We present a new prefetching technique for object-oriented databases which exploits the availability of multiprocessor client workstations. The prefetching information is obtained from the object relationships on the database pages and is stored in a Prefetch Object Table. This prefetching algorithm is implemented using multithreading. In the results we show the theoretical and empirical benefits of prefetching. The benchmark tests show that multithreaded prefetching can improve performance significantly for applications where the object access is reasonably predictable.


prefetching object-oriented databases distribution performance analysis multithreading application access pattern storage management 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    M.J. Carey, D.J. DeWitt, G. Graefe, D.M. Haight, J.E. Richardson, D.T. Schuh, E.J. Shekita, and S.L. Vandenberg. The EXODUS Extensible DBMS Project: An Overview. In S.B. Zdonik and D. Maier, editors, Readings in Object-Oriented Database Systems, pages 474–499. Morgan Kaufmann, 1990.Google Scholar
  2. 2.
    M.J. Carey, D.J. DeWitt, and J.F. Naughton. The OO7 Benchmark. In SIGMOD [15], pages 12–21.Google Scholar
  3. 3.
    E.E. Chang and R.H. Katz. Exploiting Inheritance and Structure Semantics for Effective Clustering and Buffering in an Object-Oriented DBMS. In Proc. of the ACM SIGMOD Conference on the Management of Data, pages 348–357, Portland, Oregon, June 1989.Google Scholar
  4. 4.
    K.M. Curewitz, P. Krishnan, and J.S. Vitter. Practical Prefetching via Data Compression. In SIGMOD [15], pages 257–266.Google Scholar
  5. 5.
    M.S. Day. Client Cache Management in a Distributed Object Database. PhD thesis, Massachusetts Institute of Technology, Laboratory for Computer Science, 1995.Google Scholar
  6. 6.
    C.S. Freedman and D.J. DeWitt. The SPIFFI Scalable Video-on-Demand System. In Proc. of the ACM SIGMOD/PODS95 Joint Conf. on Management of Data, pages 352–363, San Jose, CA, May 1995.Google Scholar
  7. 7.
    C.A. Gerlhof and A. Kemper. A Multi-Threaded Architecture for Prefetching in Object Bases. In Proc. of the Int. Conf. on Extending Database Technology, pages 351–364, Cambridge, UK, March 1994.Google Scholar
  8. 8.
    C.A. Gerlhof and A. Kemper. Prefetch Support Relations in Object Bases. In Proc. of the Sixth Int. Workshop on Persistent Object Systems, pages 115–126, Tarascon, Provence, France, September 1994.Google Scholar
  9. 9.
    M. Joseph. An analysis of paging and program behaviour. The Computer Journal, 13(1):48–54, February 1970.Google Scholar
  10. 10.
    T. Keller, G. Graefe, and D. Maier. Efficient Assembly of Complex Objects. In Proc. of theACM SIGMOD Int. Conf. on Management of Data, pages 148–157, Denver, USA, May 1991.Google Scholar
  11. 11.
    N. Knafla. A Prefetching Technique for Object-Oriented Databases. Technical Report ECS-CSG-28-97, Department of Computer Science, University of Edinburgh, January 1997.Google Scholar
  12. 12.
    B. Liskov, A. Adya, M. Castro, M. Day, S. Ghemawat, R. Gruber, U. Maheshwari, A.C. Myers, and L. Shira. Safe and Efficient Sharing of Persistent Objects in Thor. In Proc. of the ACM SIGMOD/PODS96 Joint Conf. on Management of Data, pages 318–329, Montreal, Canada, June 1996.Google Scholar
  13. 13.
    M. Palmer and S.B. Zdonik. Fido: A Cache That Learns to Fetch. In Proc. of the 17th Int. Conf. on Very Large Data Bases, pages 255–264, Barcelona, Spain, September 1991.Google Scholar
  14. 14.
    R.H. Patterson and G.A. Gibson. Exposing I/O Concurrency with Informed Prefetching. In 3rd Int. Conf. on Parallel and Distributed Information Systems, pages 7–16, Austin, Texas, September 1994.Google Scholar
  15. 15.
    Proc. of the ACM SIGMOD Int. Conf. on Management of Data, Washington, USA, May 1993.Google Scholar
  16. 16.
    A.J. Smith. Sequentiality and Prefetching in Database Systems. ACM Transactions on Database Systems, 3(3):223–247, September 1978.Google Scholar
  17. 17.
    J.S. Vitter and P. Krishnan. Optimal Prefetching via Data Compression. In Proc. 32nd Annual Symposium on Foundations of Computer Science, pages 121–130, San Juan, Puerto Rico, October 1991. IEEE Computer Society Press.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • Nils Knafla
    • 1
  1. 1.Dept. of Computer ScienceUniversity of EdinburghUK

Personalised recommendations