Multivalued dependency

Multivalued dependency

In database theory, multivalued dependency is a full constraint between two sets of attributes in a relation.

In contrast to the functional dependency, the multivalued dependency requires that certain tuples be present in a relation. Therefore, a multivalued dependency is a special case of tuple-generating dependency. The multivalued dependency plays a role in the 4NF database normalization.

Contents

Formal definition

The formal definition is given as follows. [1]

Let R be a relation schema and let \alpha \subseteq R and \beta \subseteq R (subsets). The multivalued dependency
\alpha \twoheadrightarrow \beta
(which can be read as α multidetermines β) holds on R if, in any legal relation r(R), for all pairs of tuples t1 and t2 in r such that t1[α] = t2[α], there exist tuples t3 and t4 in r such that
t1[α] = t2[α] = t3[α] = t4[α]
t3[β] = t1[β]
t3[R − β] = t2[R − β]
t4[β] = t2[β]
t4[R − β] = t1[R − β]

In more simple words the above condition can be expressed as follows: if we denote by (x,y,z) the tuple having values for α, β, R − α − β collectively equal to x, y, z, correspondingly, then whenever the tuples (a,b,c) and (a,d,e) exist in r, the tuples (a,b,e) and (a,d,c) should also exist in r.

Example

Consider this example of a database of teaching courses, the books recommended for the course, and the lecturers who will be teaching the course:

Teaching database
Course Book Lecturer
AHA Silberschatz John D
AHA Nederpelt William M
AHA Silberschatz William M
AHA Nederpelt John D
AHA Silberschatz Christian G
AHA Nederpelt Christian G
OSO Silberschatz John D
OSO Silberschatz William M

Because the lecturers attached to the course and the books attached to the course are independent of each other, this database design has a multivalued dependency; if we were to add a new book to the AHA course, we would have to add one record for each of the lecturers on that course, and vice versa.
Put formally, there are two multivalued dependencies in this relation: {course} \twoheadrightarrow {book} and equivalently {course} \twoheadrightarrow {lecturer}.
Databases with multivalued dependencies thus exhibit redundancy. In database normalization, fourth normal form requires that either every multivalued dependency X \twoheadrightarrow Y is trivial or for every nontrivial multivalued dependency X \twoheadrightarrow Y, X is a superkey.

Interesting properties

  • If \alpha \twoheadrightarrow \beta, Then \alpha \twoheadrightarrow R - \beta
  • If \alpha \twoheadrightarrow \beta and \gamma \subseteq \delta, Then \alpha \delta \twoheadrightarrow \beta \gamma
  • If \alpha \twoheadrightarrow \beta and \beta \twoheadrightarrow \gamma, then \alpha \twoheadrightarrow \gamma - \beta

The following also involve functional dependencies:

  • If \alpha \rightarrow \beta, then \alpha \twoheadrightarrow \beta
  • If \alpha \twoheadrightarrow \beta and \beta \rightarrow \gamma, then \alpha \twoheadrightarrow \gamma - \beta

The above rules are sound and complete.

  • A decomposition of R into (XY) and (XR − Y) is a lossless-join decomposition if and only if X \twoheadrightarrow Y holds in R.

Definitions

full constraint
A constraint which expresses something about all attributes in a database. (In contrast to an embedded constraint.) That a multivalued dependency is a full constraint follows from its definition,as where it says something about the attributes R − β.
tuple-generating dependency
A dependency which explicitly requires certain tuples to be present in the relation.
trivial multivalued dependency 1
A multivalued dependency which involves all the attributes of a relation i.e.R = \alpha \cup \beta. A trivial multivalued dependency implies, for tuples t1 and t2, tuples t3 and t4 which are equal to t1 and t2.
trivial multivalued dependency 2
A multivalued dependency for which \beta \subseteq \alpha.

References

  1. ^ Silberschatz, Abraham; Korth, Sudarshan (2006). Database System Concepts (5th ed.). McGraw-Hill. p. 295. ISBN 007-124476-X. 

External links


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • Dependency theory (database theory) — Dependency theory is a subfield of database theory which studies implication and optimization problems related to logical constraints, commonly called dependencies, on databases. The best known class of such dependencies are functional… …   Wikipedia

  • Functional dependency — A functional dependency (FD) is a constraint between two sets of attributes in a relation from a database.Given a relation R , a set of attributes X in R is said to functionally determine another attribute Y , also in R , (written X → Y ) if and… …   Wikipedia

  • Fourth normal form — (4NF) is a normal form used in database normalization. Introduced by Ronald Fagin in 1977, 4NF is the next level of normalization after Boyce Codd normal form (BCNF). Whereas the second, third, and Boyce Codd normal forms are concerned with… …   Wikipedia

  • Database normalization — In the design of a relational database management system (RDBMS), the process of organizing data to minimize redundancy is called normalization. The goal of database normalization is to decompose relations with anomalies in order to produce… …   Wikipedia

  • MVD (disambiguation) — MVD may refer to:* Mitral valve disease, AKA Mitral regurgitation or mitral insufficiency * Montevideo, capital and chief port of Uruguay ** Carrasco International Airport (IATA: MVD), Uruguay s largest airport * Russian Ministry of Internal… …   Wikipedia

  • MVD — ist die Abkürzung für: Meister vom Dienst Mittlere Verweildauer Flughafen Montevideo (IATA Code) Kavminvodyavia (ICAO Code) Mehrwertige Abhängigkeit (engl: multivalued dependency) Datenbankbegriff Verbund mittelständischer Druck und… …   Deutsch Wikipedia

  • Mehrwertige Abhängigkeit — Eine mehrwertige Abhängigkeit (engl. multivalued dependency (MVD)) beschreibt die Abhängigkeit einer Menge von Attributwerten β von einem Attributwert α. Mehrwertige Abhängigkeiten sind trivial, falls außer α und β keine weiteren Attribute im… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”