This Article 
 Bibliographic References 
 Add to: 
Chain-Split Evaluation in Deductive Databases
April 1995 (vol. 7 no. 2)
pp. 261-273

Abstract—Many popularly studied recursions in deductive databases can be compiled into one or a set of highly regular chain generating paths, each of which consists of one or a set of connected predicates. Previous studies on chain-based query evaluation in deductive databases take a chain generating path as an inseparable unit in the evaluation. However, some recursions, especially many functional recursions whose compiled chain consists of infinitely evaluable function(s), should be evaluated by chain-split evaluation, which splits a chain generating path into two portions in the evaluation: an immediately evaluable portion and a delayed-evaluation portion. In this paper, the necessity of chain-split evaluation is examined from the points of view of both efficiency and finite evaluation, and three chain-split evaluation techniques: magic sets, buffered evaluation, and partial evaluation are developed. Our study shows that chain-split evaluation is a primitive recursive query evaluation technique for different kinds of recursions, and it can be implemented efficiently in deductive databases by extensions to the existing recursive query evaluation methods.

[1] F. Bancilhon, D. Maier, Y. Sagiv, and J.D. Ullman, "Magic Sets and Other Strange Ways to Implement Logic Programs," Proc. Fifth ACM PODS Symp. Principles of Database Systems, pp. 1-15, 1986.
[2] F. Bancilhon and R. Ramakrishnan,“An amateur’s introduction to recursive query processing strategies,” Proc. 1986 ACM-SIGMOD Int’l Conf. Management Data, pp. 16-52,Washington, DC, May 1986.
[3] F. Bancilhon,C. Beeri,P. Kanellakis,, and R. Ramakrishnan,“Bounds on the propagation of selection into logic programs,” Proc. 6th ACM Symp. on Principles of Database Systems, 1987, pp. 214-226.
[4] D. Chimenti, The LDL System Prototype, IEEE Trans. on Knowledge and Data Eng., vol. 2, no. 1, March 1990, pp. 76-90.
[5] R.W. Haddad and J. F. Naughton,“A counting algorithm for a cyclic binary query,” J. of Computer and System Sciences, vol. 43, pp. 145-169, 1991.
[6] J. Han,“Constraint-based query evaluation in deductive databases,” IEEE Trans. Knowledge and Data Engineering, vol. 6, pp. 96-107, 1994.
[7] J. Han,L. Liu,, and Z. Xie, “LogicBase: A system prototype for deductive query evaluation,” Proc. 1993 ILPS Workshop on Programming with Logic Databases, pp. 146-160,Vancouver, Can., Oct. 1993.
[8] J. Han, and W. Lu,“Asynchronous chain recursions,” IEEE Trans. Knowl. and Data Eng., vol. 1, 1989, pp. 185-195.
[9] J. Han and K. Zeng,“Automatic generation of compiled forms for linear recursions,” Information Systems, vol. 17, pp. 299-322, 1992.
[10] Y. Ioannidis and R. Ramakirishnan, “Efficient Transitive Closure Algorithms,” Proc. 14th VLDB Conf., pp. 382-394, 1988.
[11] H.V. Jagadish,R. Agrawal,, and L. Ness,“A study of transitive closure as a recursion mechanism,” Proc. 1987 ACM-SIGMOD Int’l Conf. Management of Data, pp. 331-344,San Francisco, Calif., May 1987.
[12] R. Krishnamurthy,R. Ramakrishnan,, and O. Shmueli,“A framework for testing safety and effective computability of extendeddatalog,” Proc. 1988 ACM-SIGMOD Int’l Conf. Management of Data, pp. 154-163,Chicago, Ill., June 1988.
[13] R. Krishnamurthy and C. Zaniolo,“Optimization in a logic based language for knowledge and data intensiveapplications,” Extending Database Technology (EDBT’88) [Lecture Notes in Computer Science303], pp. 16-33, Springer-Verlag, 1988.
[14] J.F. Naughton,“One-sided recursions,” Proc. 6th ACM Symp. Principles of Database Systems, pp. 340-348,San Diego, Calif., Mar. 1987.
[15] R. Ramakrishnan,F. Bancilhon,, and A. Silberschatz,“Safety of recursive Horn clauses with infinite relations,” Proc. 6th ACM Symp. Principles of Database Systems, pp. 328-339,San Diego, Calif., Mar. 1987.
[16] R. Ramakrishnan,D. Srivastava,, and S. Sudarshan,“Coral_Control, relations and logic,” Proc. 18th Int’l Conf. Very Large Data Bases, pp. 547-559.,Vancouver, Can., Aug. 1992.
[17] Y. Sagiv,“On testing effective computability of magic programs,” Proc. 2nd Int’l Conf. on Deductive and Object-Oriented Databases, pp. 244-262,Munich, Dec. 1991.
[18] P. Selinger,D. Astrahan,D. Chamberlin,R. Lorie,, and T. Price,“Access path selection in a relational database management system,” Proc. 1979 ACM-SIGMOD Int’l Conf. Management of Data, pp. 23-34,Boston, May 1979.
[19] D. Srivastava and R. Ramakrishnan,“Pushing constraint selections,” J. of Logic Programming, vol. 16, pp. 361-414, 1993.
[20] L. Sterling and E. Shapiro,The Art of Prolog. The MIT Press, 1986.
[21] J. Ullman, Principles of Database and Knowledge-Base Systems, vol. 1. Computer Science Press, 1988.
[22] J. Vaghani,K. Ramamohanarao,D. Kemp,Z. Somogyi,, and P. Stuckey,“An introduction to the ADITI deductive database system,” Australian Computer J., vol. 23, pp. 37-52, 1991.
[23] L. Vieille,P. Bayer,V. Kuchenhoff,, and A. Lefebvre,“EKS-V1: A short overview,” AAAI-90 Workshop on Knowledge Base Management Systems,Boston, Mass., July 1990.

Index Terms:
deductive database, logic programming, query analysis, query optimization, query processing, recursive query evaluation
Jiawei Han, "Chain-Split Evaluation in Deductive Databases," IEEE Transactions on Knowledge and Data Engineering, vol. 7, no. 2, pp. 261-273, April 1995, doi:10.1109/69.382296
Usage of this product signifies your acceptance of the Terms of Use.