5 research outputs found
A generalization of the differential approach to recursive query evaluation
AbstractThe differential (or seminaive) approach to query evaluation in function free, recursively defined, Horn clauses was recently proposed as an improvement to the naive bottom-up evaluation strategy. In this paper, we extend the approach to efficiently accomodate n recursively defined predicates in the body of a Horn clause
A Technique for Transforming Rules in Deductive Databases
In deductive databases the efficiency of recursive query evaluation is considered
as an important goal. One approach to achieving this goal is to use methods
that transform the original query into a new set of queries. One such method
is magic sets. In the magic sets method, a query expressed by rules is transformed
into a set of rules called magic rules. This paper shows how to perform this
transformation by using a rule/goal graph data structure. The advantage of
the technique used here is that it is very simple and clear
Bottom-up evaluation of HiLog in the context of deductive database systems
Bibliography: leaves 127-130.HiLog is a logic-based language which boasts the expressiveness of a higher-order syntax while retaining the simplicity of a first-order semantics. This work examines the suitability of Horn-clause HiLog as a query language for deductive databases by investigating the feasibility of adapting well-established Datalog evaluation algorithms for the evaluation of HiLog programs. Each of the evaluation algorithms examined in the work is formally described and verified in terms of completeness and correctness. Furthermore, a practical HiLog evaluator based on each algorithm verifies the feasibility of its implementation in a real-world context. It is demonstrated that the Datalog evaluation algorithms do indeed have realistic HiLog analogs. The work also compares the performance of these analogs
Recommended from our members
A unifying approach for queries and updates in deductive databases
This dissertation presents a unifying approach to process (recursive) queries and updates in a deductive database. To improve query performance, a combined top-down and bottom-up evaluation method is used to compile rules into iterative programs that contain relational algebra operators. This method is based on the lemma resolution that retains previous results to guarantee termination.Due to locality in database processing, it is desirable to materialize frequently used queries against views of the database. Unfortunately, if updates are allowed, maintaining materialized view tables becomes a major problem. We propose to materialize views incrementally, as queries are being answered. Hence views in our approach are only partially materialized. For such views, we design algorithms to perform updates only when the underlying view tables are actually affected.We compare our approach to two conventional methods for dealing with views: total materialization and query-modification. The first method materializes the entire view when it is defined while the second recomputes the view on the fly without maintaining any physical view tables. We demonstrate that our approach is a compromise between these two methods and performs better than either one in many situations.It is also desirable to be able to update views just like updating base tables. However, view updates are inherently ambiguous and the semantics of update propagation on recursively defined views were not well understood in the past. Using dynamic logic programming and lemma resolution, we are able to define the semantics of recursive view updates. These are expressed in the form of update translators specified by the database administrator when the view is defined. To guarantee completeness, we identify a subset of safe update translators. We prove that this subset of translators always terminate and are complete