Databases Reference
In-Depth Information
1.
The first step consists of seven iterations.
a. Iteration 1: Ancestor(Rose, Jennifer) is deduced by applying R1.
b. Iteration 2: Magic_Anc( Jennifer) is deduced by applying R2.
c. Iteration 3: No new consequences are deduced by applying R3.
d. Iteration 4: Ancestor( Jennifer, Monica) is deduced by applying R1.
e. Iteration 5: Magic_Anc(Monica) is deduced by applying R2.
f. Iteration 6: Ancestor(Rose, Monica) is deduced by R3.
g. Iteration 7: No new consequences are deduced by applying R1,
R2, and R3.
2.
The obtained result is {Ancestor(Rose, Jennifer), Ancestor(Rose,
Monica)}.
Note that by computing rewritten rules bottom-up, we only deduce the
information relevant to the requested query. That is achieved by means of
the Magic_Anc predicate, which is included in the body of all rules, and
by the fact Magic_Anc(Rose), which allows us to compute only Roses
descendants.
4.4
Update Processing
Deductive DBMSs must also provide an update processing system able to
handle updates specified in terms of base and view predicates. The objective
of update processing is to perform the work required to apply the requested
update, by taking into account the intensional information provided by
views and integrity constraints.
This section reviews the most important problems related to update
processing: change computation, view updating, and integrity constraint
enforcement. We also describe a framework for classifying and specifying all
of those problems. The following example will be used throughout this
presentation.
Example 4.6
The following deductive DB provides information about employees.
Emp( John, Sales)
Mgr(Sales, Mary)
Work_age( John)
Emp(Albert, Marketing)
Mgr(Marketing, Anne) Work_age(Albert)
Emp(Peter, Marketing)
Work_age(Peter)
Search WWH ::




Custom Search