En la teoría de bases de datos , una dependencia multivaluada es una restricción completa entre dos conjuntos de atributos en una relación .
A diferencia de la dependencia funcional , la dependencia multivaluada requiere que ciertas tuplas estén presentes en una relación. Por lo tanto, una dependencia multivaluada es un caso especial de dependencia generadora de tuplas . La dependencia multivaluada desempeña un papel en la normalización de bases de datos 4NF .
Una dependencia multivaluada es un caso especial de una dependencia de unión , en la que solo intervienen dos conjuntos de valores, es decir, es una dependencia de unión binaria.
Existe una dependencia multivaluada cuando hay al menos tres atributos (como X, Y y Z) en una relación y para un valor de X existe un conjunto bien definido de valores de Y y un conjunto bien definido de valores de Z. Sin embargo, el conjunto de valores de Y es independiente del conjunto de Z y viceversa.
Definición formal
La definición formal es la siguiente: [ 1 ]
Sea un esquema de relaciones y sean y conjuntos de atributos. La dependencia multivaluada (" multidetermina ") se cumple si, para cualquier relación válida y para todos los pares de tuplas y en tales que , existen tuplas y en tales que:
De manera informal, si se denota por la tupla cuyos valores son colectivamente iguales a , entonces siempre que las tuplas y existan en , las tuplas y también deberían existir en .
La dependencia multivaluada se puede representar esquemáticamente como se muestra a continuación:
Ejemplo
Consideremos este ejemplo de relación entre los cursos universitarios, los libros recomendados para el curso y los profesores que lo impartirán:
Debido a que los profesores asociados al curso y los libros asociados al curso son independientes entre sí, este diseño de base de datos tiene una dependencia multivaluada; si añadiéramos un nuevo libro al curso AHA, tendríamos que añadir un registro para cada uno de los profesores de ese curso, y viceversa. Dicho formalmente, hay dos dependencias multivaluadas en esta relación: {curso} {libro} y, equivalentemente, {curso} {profesor}. Las bases de datos con dependencias multivaluadas presentan, por lo tanto, redundancia. En la normalización de bases de datos , la cuarta forma normal requiere que para cada dependencia multivaluada no trivial X Y , X sea una superclave . Una dependencia multivaluada X Y es trivial si Y es un subconjunto de X , o si es el conjunto completo de atributos de la relación.
Propiedades
- Si , entonces
- Si y , entonces
- Si y , entonces
Las siguientes también implican dependencias funcionales :
- Si , entonces
- Si y , entonces
Las reglas anteriores son sólidas y completas.
- Una descomposición de R en ( X , Y ) y ( X , R − Y ) es una descomposición de unión sin pérdida si y solo si X Y se cumple en R .
- Cada FD ( dependencia funcional ) es una MVD (dependencia multivaluada) porque si X Y, entonces intercambiar Y entre tuplas que coinciden en X no crea nuevas tuplas.
- La división no es posible. Al igual que con los descriptores de archivo (FD), generalmente no podemos dividir el lado izquierdo de un MVD. Pero a diferencia de los FD, tampoco podemos dividir el lado derecho; a veces es necesario dejar varios atributos en el lado derecho.
- El cierre de un conjunto de MVD es el conjunto de todos los MVD que se pueden inferir utilizando las siguientes reglas ( axiomas de Armstrong ):
- Complementación : Si X Y, entonces X R - Y
- Aumento : Si X Y y Z W, entonces XW YZ
- Transitividad : Si X Y y Y Z, entonces X Z - Y
- Replicación : Si X Y, entonces X Y
- Coalescencia : Si X Y y W st W Y = , W Z, y Z Y, entonces X Z
Definiciones
- Restricción total
- Una restricción que expresa algo sobre todos los atributos en una base de datos. (En contraste con una restricción incrustada ). Que una dependencia multivaluada sea una restricción completa se deduce de su definición, ya que dice algo sobre los atributos .
- Dependencia generadora de tuplas
- Una dependencia que requiere explícitamente que ciertas tuplas estén presentes en la relación.
- Dependencia multivaluada trivial 1
- Una dependencia multivaluada que involucra todos los atributos de una relación, es decir , . Una dependencia multivaluada trivial implica, para las tuplas y , tuplas y que son iguales a y .
- Dependencia multivaluada trivial 2
- Una dependencia multivaluada para la cual .
Referencias
- ↑ Silberschatz, Abraham ; Korth, Sudarshan (2006). Conceptos de sistemas de bases de datos (5.ª ed.). McGraw-Hill . pág . 295. ISBN 0-07-124476-X.
Enlaces externos
- Dependencias multivaluadas y una nueva forma normal para bases de datos relacionales (PDF) - Ronald Fagin, Laboratorio de Investigación de IBM
- Sobre la estructura de las relaciones de Armstrong para dependencias funcionales (PDF) - CATRIEL BEERI (Universidad Hebrea), MARTIN DOWD (Universidad de Rutgers), RONALD FAGIN (Laboratorio de Investigación de IBM) Y RICHARD STATMAN (Universidad de Rutgers)
- Sobre un problema de Fagin relativo a las dependencias multivaluadas en bases de datos relacionales (PDF) - Sven Hartmann, Universidad de Massey
- Modelado de datos
- Restricciones de la base de datos