Database Reference
In-Depth Information
P 1 . In other words, the process graph of a.t 1 is obtained by joining the edge a
with the tree P 2 . It is an associative but not a commutative operator, with right
distributivity a.(t 1
a.t 2 .
In what follows, we can alternatively consider only one binary two sorts se-
quential composition operator ' . ', with the first argument in Act and the second
argument being a term and the infix notation ' .(a,t 1 ) '.
t 2 )
=
a.t 1
Finally, we assume the nullary operator 'nil', that ends the process at a given
state.
Consequently, in what follows, the program language for a data mapping system of
a graph G is given by a general GSOS DB grammar (with terms t ), with the set Act
of actions that can be infinite as well
( GSOS DB )t
:=
p
|
a
|
nil
|
a.t 1 |
t 1
t 2 ,
where 'nil' is a basic inert program nullary symbol (stop of execution constant),
' a. ' is a unary action-prefixing operator symbol of programs, '
' is a binary paral-
lel composition symbol of programs, a
Act is an atomic action, and p
X is a
program variable.
Notice that, differently from CCS, we do not use the 'alternative composition'
but only the parallel composition '
'. In the database mapping processes, the term
t
t is not equal to t (in DB-denotational semantics, we will have that ground terms
(without free variables) are instance-databases and '
' denotes the coproduct in the
DB category while ' . ' denotes the matching operator
: two identical instance-
databases with two mutually independent DBMS (i.e., A
A ) are not equal (iso-
morphic in the DB denotational semantics) to the single database A with its DBMS),
but the associative and commutative axioms are valid, and t
+
nil
=
t is an axiom as
well.
Notice that
is a commutative and associative operator, so that t 1 t 2 = t 2 t 1 and
t 1
(t 2
=
(t 1
t 3 =
t 1
t 2
t 3 )
t 2 )
t 3 . Consequently, we can introduce the finite n -ary,
n ' for it (with '
2 ' equal to '
1 ' being the identity
n
1, generalization '
' and '
1 (t)
n (t 1 ,...,t n )
operator), in the prefix forms
t n .
In what follows, we will define a specific interpretation of this simple grammar
for our case of database-mapping programs.
=
t and for n
2,
=
t 1 ···
7.2
Updates Through Views
Given an update on a view of a relational database, how should it be translated
to updates on the underlying database? The problem of updates through relational
views has been studied for more than 20 years by the database community [ 5 , 13 ,
20 , 38 ].
Ideally, view updates must be translated to updates on the base tables (relations)
in a way that the views state after the update is the same we would have gotten if
the update has been applied to a materialized view instance.
Search WWH ::




Custom Search