Databases Reference
In-Depth Information
Chapter 3
T h e V i e w C o n c e p t :
A C l o s e r L o o k
Distance lends enchantment to the view
—Thomas Campbell: Pleasures of Hope (1799)
Every scientific discipline has its share of unsolved problems. In mathematics, for example,
there's the Riemann Hypothesis, which nobody has managed to prove or disprove in over 150
years; in computer science, there's the “P = NP?” question, which is still open after some 40
years; in physics and cosmology, there's the long search for a “theory of everything,” which
remains—in many people's opinion, though possibly not in everyone's—just that, a search; and
in database theory, there's the problem of view updating. Now, I obviously don't mean to
suggest that the problem of view updating is in the same league as the Riemann Hypothesis or
the “P = NP?” question or some hypothetical “theory of everything”; 1 however, I do claim it's of
considerable practical importance and much theoretical interest. In this chapter, therefore, I want
to lay some of the groundwork that's necessary for a systematic attack on that problem.
I begin with the trite observation that a view is a relvar—a virtual relvar, to be precise, or in
other words a relvar that “looks and feels” just like a real, or base, relvar but (unlike a real or
base relvar) doesn't exist independently of other relvars; rather, it's defined in terms of, or
derived from, such other relvars. Here's a definition:
Definition: A view is a derived, virtual relvar. The value of view V at time T is the result
of evaluating a certain relational expression (the view defining expression ) at that time T .
That expression is specified when V is defined and must mention at least one relvar. 2
1 One of my reviewers claimed it most certainly is in the same league. Maybe it is. I don't want to argue the point.
2 It must mention at least one relvar because otherwise the view wouldn't be a relvar at all but merely a relation constant (see
further discussion in Chapter 13).
Search WWH ::




Custom Search