Normalizacin y Dependencia Funcional
Normalizacin
El propsito de la normalizacin es producir un conjunto estable de relaciones que sea un fiel modelo de las operaciones de la empresa. Al seguir los principios de la normalizacin, se logra un diseo muy flexible, lo que permite que el modelo pueda extenderse cuando sea necesario.
Normalizacin
Codd fue quien identific las anomalas de insercin, borrado y actualizacin, de las cuales identific sus causas y de ah defini las primeras tres formas normales. Los investigadores al puntualizar las causas de las anomalas identificaron tres tipos de dependencias: funcionales, multivaladas y de combinacin.
Dependencia Funcional
Es un tipo de relacin entre atributos, como se define a continuacin:
Si R es un esquema de relacin y A y B son conjuntos de atributos no vacos de R, se dice que B es funcionalmente dependiente en A si y slo si cada valor de A en R tiene asociado exactamente un valor de B en R. A B
Dependencia Funcional
Una dependencia en realidad es una relacin muchos a uno del conjunto de atributos A al conjunto de atributos B. Es una restriccin de integridad que toda instancia de la base de datos debe de obedecer. Cuando existe una dependencia funcional, el conjunto de atributos en el lado izquierdo de la flecha se llamada determinante y el de lado derecho se llama dependiente.
Superclaves, claves candidatas y claves primarias
Superclave: Es un atributo o conjunto de atributos que identifica de manera nica una entidad. En una tabla, una superclave es cualquier columna o conjunto de columnas cuyos valores se pueden usar para distinguir una fila de otra. Dado que una superclave identifica de manera nica a cada entidad, determina funcionalmente a todos los atributos de una relacin.
Superclaves, claves candidatas y claves primarias
Clave candidata: Es una superclave tal que ningn subconjunto propio de sus atributos sea por s mismo una superclave. Una clave candidata debe ser un identificador mnimo.
Clave primaria: Es una clave candidata que en realidad se usa para identificar tuplas en una relacin. Cuando se toma una decisin acerca de cul clave candidata usar como clave primaria, es importante considerar cul eleccin es una mejor representacin del mundo real.
Primera Forma Normal (1FN)
Una relacin est en primera forma normal (1FN) si y slo si cada atributo tiene valor sencillo para cada tupla.
Primera Forma Normal (1FN)
Esto significa que cada atributo de cada fila, o cada celda de la tabla, contiene slo un valor. De otra manera se puede decir que los dominios de los atributos de la relacin son atmicos; esto queire decir que los valores del dominio deben ser valores nicos que no se puedan descomponer ms.
Ejemplo
S1006 y S1010 violan la 1FN
Ejemplo
De esta manera se resolvera el error cometido:
Ejemplo
Estas seran otras opciones:
Dependencia funcional completa y segunda forma normal
Dependencia Funcional Completa: En una relacin R, el atributo A de R es completamente dependiente funcional sobre un atributo o conjunto de atributos X de R si A es funcionalmente dependiente sobre X pero no funcionalmente dependiente sobre cualquier subconjunto de X.
Dependencia funcional completa y segunda forma normal
Una relacin est en segunda forma normal (2FN) si y slo si est en primera forma normal y todos los atributos no clave son completamente dependientes funcionales sobre la clave.
Dependencia funcional completa y segunda forma normal
Una relacin 1FN que no es 2FN se puede transformar a 2FN. La transformacin se efecta al realizar proyecciones sobre la relacin original en tal forma que es posible regresar al original al tomar la combinacin de las proyecciones.
Ejemplo
Tabla NewClass no est en 2FN
Ejemplo
De esta manera se hara proyeccin para estar en 2FN:
la
Dependencia transitiva y tercera forma normal
Dependencia transitiva:Si A, B y C son atributos de la relacin R, tales que A B y B C, entonces C es transitivamente dependiente de A. Para la 3FN se quiere eliminar ciertas dependencias transitivas. Las dependencias transitivas causan anomalas de insercin, borrado y actualizacin.
Dependencia transitiva y tercera forma normal
Una relacin est en tercera forma normal (3FN) si, siempre que exista una dependencia funcional no trivial X A, entonces o X es una superclave o A es un miembro de alguna clave candidata.
Ejemplo
La tabla NewStudent no est en 3FN pero se pasara a 3FN como se muestra:
Forma normal Boyce-Codd
Es una forma normal utilizada en la normalizacin de bases de datos. Es una versin ligeramente ms fuerte de la tercera forma normal (3FN). Requiere que no existan dependencias funcionales no triviales de los atributos que no sean un conjunto de la clave candidata. En una tabla en 3FN, todos los atributos dependen de una clave, de la clave completa y de ninguna otra cosa excepto de la clave.
Forma normal Boyce-Codd
Se dice que una tabla est en forma normal Boyce-Codd (FNBC) si y solo si est en 3FN y cada dependencia funcional no trivial tiene una clave candidata como determinante. En trminos menos formales, una tabla est en FNBC si est en 3FN y los nicos determinantes son claves candidatas.
Ejemplo
Tabla en 3FN pero no FNBC
Ejemplo
Tabla en FNBC
Propiedades de las descomposiciones relacionales
Todos los atributos en la base de datos se colocan en una sola relacin grande llamada relacin universal. Al usar dependencias funcionales y otras restricciones, la relacin universal se descompone en esquemas relacionales ms pequeos hasta que el proceso alcanza un punto donde ya no se requiere ms descomposicin.
Propiedades de las descomposiciones relacionales
Preservacin del atributo: Cuando la relacin universal se construye, contiene todo atributo en la base de datos. En el proceso de descomponer la relacin universal se requiere garantizar que cada atributo aparezca en al menos una de las relaciones. Preservacin de dependencia: Una dependencia funcional representa una restriccin que se debe reforzar en la base de datos. En una descomposicin, las dependencias funcionales deben involucrar a todos los atributos dentro de una misma tabla si es posible.
Propiedades de las descomposiciones relacionales
Descomposicin sin prdida: Al dividir las relaciones mediante proyeccin se tuvo cuidado que pudieran deshacerse al combinar las tablas resultantes, de manera que resultara la tabla original. Tabla original no se entiende simplemente como la estructura de la tabla, esto es los nombres de columna, sino tambin las tuplas reales. Tal descomposicin se llama descomposicin sin prdida.
Dependencias multivaluadas y cuarta forma normal
Dependencia multivaluada: Sea R una relacin que tiene atributos o conjuntos de atributos A, B y C. Existe una dependencia multivaluada del atributo B sobre el atributo A si y slo s el conjunto de valores B asociados con un valor A dado es independiente de los valores C.
Esto se escribe como A>B, entonces en cualquier tabla para R, si dos tuplas, t1 y t2, tienen el mismo valor A, entonces deben existir otras dos tuplas t3 yt4.
Dependencias multivaluadas y cuarta forma normal
Una relacin est en cuarta forma normal (4FN) si y slo si es una formal normal Boyce-Codd y no hay dependencias multivaluadas no triviales
Ejemplo
Tabla JointAppoint no est en 1FN
Ejemplo
Ahora est en 1FN
Ejemplo
As quedaran en 4FN
Quinta forma normal
Una relacin est en quinta forma normal (5FN) si toda dependencia de combinacin es implicada por las claves candidatas.
Esto significa que las nicas descomposiciones vlidas son aquellas que involucran claves candidatas
Ejemplo
Tabla EmpRoleProj
Ejemplo
Proyecciones de la tabla
Ejemplo
Primera combinacin de Table 1 y 2
Combinacin de la anterior con Table 3
Forma normal dominio-clave
Una relacin est en forma normal dominio-clave (FNDC) si toda restriccin es una consecuencia lgica de las restricciones de dominio o restricciones de clave.
Forma normal dominio-clave
El dominio de un atributo es el conjunto de valores permisibles para dicho atributo. La palabra clave se refiere a superclave, y es un identificador nico para cada entidad.
La restriccin es un trmino general que significa una regla o restriccin que se puede verificar al examinar estados estticos de la base de datos.