Some performance results on recursive query processing in relational database systems

The processing of recursive queries in relational database systems poses a great challenge in research on expert database systems. This paper uses both analytical and experimental methods to investigate the performance of several different algorithms in processing a recursive query in first-order recursive databases. The analytical method estimated the I/O and CPU cost and the storage needed in processing recursive queries. The experimental tests were performed on a synthetic relational database built on top of WISS (Wisconsin Storage System) on VAX 11/750. Both analytical and experimental results indicate that for efficient recursive database processing it is important to apply the following heuristics: performing selection first, making use of wavefront relations, and grouping those joins which reduce the size of intermediate results. The termination conditions for recursive queries are also discussed in the paper.

[1]  Jeffrey D. Ullman,et al.  Implementation of logical query languages for databases , 1985, TODS.

[2]  Jack Minker,et al.  Search strategy and selection function for an inferential relational system , 1978, TODS.

[3]  J. D. Uiiman,et al.  Principles of Database Systems , 2004, PODS 2004.

[4]  Patrick Valduriez,et al.  Join indices , 1987, TODS.

[5]  Raymond Reiter,et al.  Deductive Question-Answering on Relational Data Bases , 1977, Logic and Data Bases.

[6]  Stuart C. Shapiro,et al.  Inference with Recursive Rules , 1980, AAAI.

[7]  Hongjun Lu,et al.  Some Experimental Results on Distributed Join Algorithms in a Local Network , 1985, VLDB.

[8]  M. W. Blasgen,et al.  Storage and Access in Relational Data Bases , 1977, IBM Syst. J..

[9]  David J. DeWitt,et al.  Design and implementation of the wisconsin storage system , 1985, Softw. Pract. Exp..

[10]  Lawrence J. Henschen,et al.  On compiling queries in recursive first-order databases , 1984, JACM.

[11]  Timos K. Sellis,et al.  Optimization of extended database query languages , 1985, SIGMOD Conference.

[12]  Chin-Liang Chang On Evaluation of Queries Containing Derived Relations in a Relational Data Base , 1979, Advances in Data Base Theory.

[13]  Michael Stonebraker,et al.  Heuristic search in database systems , 1986 .

[14]  David J. DeWitt,et al.  Benchmarking Database Systems A Systematic Approach , 1983, VLDB.

[15]  John Miles Smith,et al.  Expert Database Systems: A Database Perspective , 1984, Expert Database Workshop.

[16]  Jack Minker,et al.  Logic and Databases: A Deductive Approach , 1984, CSUR.

[17]  Antonin Guttman,et al.  New Features for Relational Database Systems to Support CAD Applications , 1984 .

[18]  Matthias Jarke,et al.  Query Optimization in Database Systems , 1984, CSUR.

[19]  Jiawei Han,et al.  Knowledge-Directed Recursive Rule Compilation in Expert Database Systems , 1985, CAIA.

[20]  Patricia G. Selinger,et al.  Access path selection in a relational database management system , 1979, SIGMOD '79.

[21]  Michael Stonebraker,et al.  Heuristic Search in Data Base Systems , 1984, Expert Database Workshop.