# Re: View updating in practice?

Date: Wed, 13 Nov 2002 06:36:09 GMT

Message-ID: <tpmA9.13340$QZ.4692_at_sccrnsc02>

"Jens Lechtenbörger" <lechtej_at_uni-muenster.de> wrote in message
news:m265v6nz31.fsf_at_pcwi1068.uni-muenster.de...

> Just to clarify the connection between view inverses and constant

> complement translators, here is a rough outline of my approach:

Let's doublecheck that I understand your approach. I'm going to use a very restricted set of views -- Linear Algebra Transformations only. (Then, we need numbers domain with operators, of course). I will interpret your posting sentence by sentence in Linear Algebra.

Linear Transformation T:D->V defined by a matrix

could be defined as a single view

select x+2*y+3*z, 2*x+y from D

select x+2*y+3*z from D

select 2*x+y+0*z from D

*> Now, a set C of
**> views over D is a complement of V if it is possible to compute D
*

> from V and C, i.e., if there is way to compute any source state from

> the state of V and C,

If we add one more row to the matrix in our example

| 1 2 3 | | 2 1 0 | | 1 1 -1 |

then it becomes invertible. Invertible transformation T maps vectors one-to-one. In view interpretation additional matrix row(s) is a complement view

*> Note that in
*

> general, complements are not unique (as you might expect from

> algebraic complements).

as an alternative complement view.

> In particular, views that describe a copy

> of D are a complement for any set of views.

View defined as a "Copy of D" is just a view based upon identity matrix:

*> Now, a view update on view V can be translated under constant
*

> complement if there is a complement C of V such that the contents of

> C do not change when the view update is executed on the database.

Suppose, D current content is {<x=1,y=1,z=1>}. A view V would manifest

<1*1+2*1+3*1,2*1+1*1>=<6,3>. Suppose a new tuple <x=2,y=2,z=2> added. A view V would manifest an extra tuple <1*2+2*2+3*2,2*2+1*2>=<12,6>. Is there a view D such that an imageof the new and the old tuple is the same? It certainly is, for example

select x-z from D

It would depend on the new tuple and the D currrent content, of course.

Constant complement, however, seems meaningless from linear algebra perspective: neither user, nor the systems calculates complement view. Given a view update, one needs to translate it back to the base relations. I don't see how can it be done without solving equations. And a view have to be invertible.

Or maybe I'm just missing correct Linear Algebra interpretation of the constant complement? Received on Wed Nov 13 2002 - 07:36:09 CET