Title :
Chain-split evaluation in deductive databases
Author_Institution :
Sch. of Comput. Sci., Simon Fraser Univ., Burnaby, BC, Canada
fDate :
4/1/1995 12:00:00 AM
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. 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
Keywords :
database theory; deductive databases; partial evaluation (compilers); program processors; query processing; buffered evaluation; chain-based query evaluation; chain-split evaluation; compiled chain; connected predicates; deductive databases; delayed-evaluation portion; efficiency; finite evaluation; functional recursions; highly regular chain generating paths; immediately evaluable portion; infinitely evaluable function; magic sets; partial evaluation; primitive recursive query evaluation technique; recursions; Computer Society; Deductive databases; Delay; Logic programming; Query processing;
Journal_Title :
Knowledge and Data Engineering, IEEE Transactions on