Skip to main content
Log in

Implementation and evaluation of parallel query processing algorithms and data partitioning heuristics in object-oriented databases

  • Published:
Distributed and Parallel Databases Aims and scope Submit manuscript

Abstract

Object-oriented database management systems (OODBMSs) provide rich facilities for the modeling and processing of structural as well as behavioral properties of complex application objects. However, due to their inherent generality and continuously evolving functionalities, efficient implementations are important for these OODBMSs to support the present and future applications, particularly when the databases are very large. In this paper, we present several parallel, multi-wavefront algorithms based on two processing approaches, i.e., identification and elimination approaches, to verify association patterns specified in queries. Both approaches allow more processors to operate concurrently on a query than the traditional tree-structured query processing approach, thus introducing a higher degree of parallelism in query processing. A heuristic method is presented for partitioning an object-oriented database (OODB). The main consideration for partitioning the database is load balancing. This method also tries to reduce the communication time by reducing the length of the path that wavefronts need to be propagated. Multiple wavefront algorithms based on the two approaches for tree-structured queries have been implemented on an nCUBE 2 parallel computer. The implementation of the query processor allows multiple queries to be executed simultaneously. This implementation provides an environment for evaluating the algorithms and the heuristic method for partitioning the database. The evaluation results are presented in this paper.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. A.M. Alashqur, S.Y.W. Su, and H. Lam, “OQL: A query language for manipulating object-oriented databases,” in Proc. 15th Int'l Conf. on Very Large Data Bases, August 1989, pp. 433–442.

  2. A.M. Alashqur, S.Y.W. Su, and H. Lam, “A rule-based language for deductive object-oriented databases,” in Proc. 6th Int'l Conf. on Data Eng., February 1990, pp. 58–67.

  3. P.M.G.Apers, A.R.Hevner, and S.B.Yao, “Optimization algorithms for distributed queries,” IEEE Trans. Softw. Eng., vol. SE-9, no. 1, pp. 57–68, 1983.

    Google Scholar 

  4. P.M.G.Apers, C.A.van denBerg, J.Flokstra, P.W.P.J.Grefen, M.L.Kersten, and A.N.Wilschut, “PRISMA/DB: A parallel main memory relational DBMS,” IEEE Trans. Knowledge Data Eng., vol. 4, no. 6, pp. 541–554, 1992.

    Google Scholar 

  5. J.Banerjee, W.Kim, S.J.Kim, and J.F.Garza, “Clustering a DAG for CAD databases,“ IEEE Trans. Softw. Eng., vol. 14, no. 11, pp. 1684–1699, 1988.

    Google Scholar 

  6. P.A.Bernstein and D.W.Chiu, “Using semi-joins to solve relational queries,” Journal of the ACM, vol. 28, no. 1, pp. 25–40, 1981.

    Google Scholar 

  7. L.Bic and R.L.Hartmann, “AGM: A dataflow database machine,” ACM Transactions on Database Systems, vol. 14, no. 1, pp. 114–146, 1989.

    Google Scholar 

  8. M.J. Carey, D.J. DeWitt, J.E. Richardson, and E.J. Shekita, “Object and file management in the EXODUS extensible database system,” in Proc. 12th Int'l Conf. on Very Large Data Bases, August 1986, pp. 91–100.

  9. A.L.P.Chen, D.Brill, M.Templeton, and C.T.Yu, “Distributed query processing in a multiple database system,” IEEE Journal on Selected Areas in Communications, vol. 7, no. 3, pp. 390–398, 1989.

    Google Scholar 

  10. M.-S. Chen and P.S. Yu, “Determining beneficial semijoins for a join sequence in distributed query processing,” in Proc. 7th Int'l Conf. on Data Eng., April 1991, pp. 50–58.

  11. Y.-H. Chen, “Graph-based Parallel Query Processing and Data Partitioning in Object-oriented Databases,” Ph.D. dissertation, Department of Computer and Information Sciences, University of Florida, 1993.

  12. Y.-H.Chen and S.Y.W.Su, “Identification- and elimination-based parallel query processing techniques for object-oriented databases,” J. Parallel Distributed Comput., vol. 28, pp. 130–148, 1995.

    Google Scholar 

  13. J.R. Cheng and A.R. Hurson, “Effective clustering of complex objects in object-oriented databases,” in Proc. ACM SIGMOD Int'l Conf. on Management of Data, May 1991, pp. 22–31.

  14. O.Deux et al., “The story of O2,” IEEE Trans. Knowledge Data Eng., vol. 2, no. 1, pp. 91–108, 1990.

    Google Scholar 

  15. L.W.Dowdy and D.V.Foster, “Comparative models of the file assignment problem,” ACM Computing Surveys, vol. 14, no. 2, pp. 287–313, 1982.

    Google Scholar 

  16. Y.E. Ioannidis and Y.C. Kang, “Randomized algorithms for optimizing large join queries,” in Proc. ACM SIGMOD Int'l Conf. on Management of Data, May 1990, pp. 312–321.

  17. Y. Kambayashi, “Processing cyclic queries,” in W. Kim, D.S. Reiner, and D.S. Batory (Eds.), Query Processing in Database Systems, 1985, pp. 62–78, Springer-Verlag.

  18. S. Khoshafian, P. Valduriez, and G. Copeland, “Parallel query processing for complex objects,” in Proc. 4th Int'l Conf. on Data Eng., February 1988, pp. 202–209.

  19. K.-C. Kim, “Parallelism in object-oriented query processing,” in Proc. 6th Int'l Conf. on Data Eng., February 1990, pp. 209–217.

  20. W. Kim, “A model of queries for object-oriented databases,” in Proc. 15th Int'l Conf. on Very Large Data Bases, August 1989, pp. 423–432.

  21. W.Kim, J.F.Garza, N.Ballou, and D.Woelk, “Architecture of the ORION next-generation database system,” IEEE Trans. Knowledge Data Eng., vol. 2, no. 1, pp. 109–124, 1990.

    Google Scholar 

  22. M. Kitsuregawa and Y. Ogawa, “Bucket spreading parallel hash: A new, robust, parallel hash join method for data skew in the super database computer (SDC),” in Proc. 16th Int'l Conf. on Very Large Data Bases, August 1990, pp. 210–221.

  23. R. Krishnamurthy, H. Boral, and C. Zaniolo, “Optimization of nonrecursive queries,” in Proc. 12th Int'l Conf. on Very Large Data Bases, August 1986, pp. 128–137.

  24. H. Lam, C. Lee, and S.Y.W. Su, “An object flow computer for database applications,” in Proc. of the Int'l Workshop on Database Machines, June 1989, pp. 1–17.

  25. C.Lee, H.Lam, and S.Y.W.Su, “An object flow computer for database applications: Design and performance evaluation,” J. Parallel Distributed Comput., vol. 17, pp. 298–314, 1993.

    Google Scholar 

  26. S.-T. Liu, “Performance upgrade for object bases using disk arrays,” Master's thesis, National Cheng Kung University, 1994.

  27. H. Lu, M.-C. Shan, and K.-L. Tan, “Optimization of multi-way join queries for parallel execution,” in Proc. 17th Int'l Conf. on Very Large Data Bases, September 1991, pp. 549–560.

  28. nCUBE, Foster City, CA., nCUBE 2 Programmer's Guide, 1992. Release 3.0.

  29. N.Roussopoulos and H.Kang, “A pipeline N-way join algorithm based on the 2-way semijoin program,” IEEE Trans. Knowledge Data Eng., vol. 3, no. 4, pp. 486–495, 1991.

    Google Scholar 

  30. D.A. Schneider and D.J. DeWitt, “A performance evaluation of four parallel join algorithms in a sharednothing multiprocessor environment,” in Proc. ACM SIGMOD Int'l Conf. on Management of Data, June 1989, pp. 110–121.

  31. D.A. Schneider and D.J. DeWitt, “Tradeoffs in processing complex join queries via hashing in multiprocessor database machines,” in Proc. 16th Int'l Conf. on Very Large Data Bases, August 1990, pp. 469–480.

  32. K. Shannon and R. Snodgrass, “Semantic clustering,” in A. Dearle, G.M. Shaw, and S.B. Zdonik (Eds.), Implementing Persistent Object Bases: Principles and Practice, Morgan Kaufmann Publishers, 1991, pp. 389–402.

  33. S.Y.W. Su, V. Krishnamurthy, and H. Lam, “An object-oriented semantic association model (OSAM*),” in S. Kumara, A.L. Soyster, and R.L. Kashyap (Eds.), Artificial Intelligence: Manufacturing Theory and Practice, Institute of Industrial Engineers, Industrial Engineering and Management Press, 1989, pp. 463–494.

  34. S.Y.W. Su, Y.-H. Chen, and H. Lam, “Multiple wavefront algorithms for pattern-based processing of object-oriented databases,” in Proc. 1st Int'l Conf. on Parallel and Distributed Inf. Syst., December 1991, pp. 46–55.

  35. S.Y.W.Su, M.Guo, and H.Lam, “Association algebra: A mathematical foundation for object-oriented databases,” IEEE Trans. Knowledge Data Eng., vol. 5, no. 5, pp. 775–798, 1993.

    Google Scholar 

  36. A. Swami and A. Gupta, “Optimization of large join queries,” in Proc. ACM SIGMOD Int'l Conf. on Management of Data, June 1988, pp. 8–17.

  37. Y.C. Tay, “Attribute agreement” in Proc. of the 8th ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, March 1989, pp. 110–119.

  38. A.K.Thakore, S.Y.W.Su, and H.X.Lam, “Algorithms for asynchronous parallel processing of object-oriented databases,” IEEE Trans. Knowledge Data Eng., vol. 7, no. 3, pp. 487–504, 1995.

    Google Scholar 

  39. M.M. Tsangaris and J.F. Naughton, “A stochastic approach for clustering in object bases,” in Proc. ACM SIGMOD Int'l Conf. on Management of Data, May 1991, pp. 12–21.

  40. M.M. Tsangaris and J.F. Naughton, “On the performance of object clustering techniques,” in Proc. ACM SIGMOD Int'l Conf. on Management of Data, June 1992, pp. 144–153.

  41. P.Valduriez, “Join indices,” ACM Transactions on Database Systems, vol. 12, no. 2, pp. 218–246, 1987.

    Google Scholar 

  42. P.Valduriez and G.Gardarin, “Join and semijoin algorithms for a multiprocessor database machine,” ACM Transactions on Database Systems, vol. 9, no. 1, pp. 133–161, 1984.

    Google Scholar 

  43. C. Wang, V.O.K. Li, and A.L.P. Chen, “Distributed query optimization by one-shot fixed-precision semi-join execution,” in Proc. 7th Int'l Conf. on Data Eng., April 1991, pp. 756–763.

  44. K.Wilkinson, P.Lyngbæk, and W.Hasan, “The Iris architecture and implementation,” IEEE Trans. Knowledge Data Eng., vol. 2, no. 1, pp. 63–75, 1990.

    Google Scholar 

  45. P.C.Yue and C.K.Wang, “On the optimality of the probability ranking scheme in storage applications,” Journal of the ACM, vol. 20, no. 4, pp. 624–633, 1973.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Additional information

Recommended by: Patrick Valduriez

Rights and permissions

Reprints and permissions

About this article

Cite this article

Chen, YH., Su, S.Y.W. Implementation and evaluation of parallel query processing algorithms and data partitioning heuristics in object-oriented databases. Distrib Parallel Databases 4, 107–142 (1996). https://doi.org/10.1007/BF00204904

Download citation

  • Received:

  • Accepted:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00204904

Keywords

Navigation