Base de Datos  Profesor: MSC Luis Serna Jherry
Normalización Proceso de Normalización. Forma Normal Boyce/Codd. Dependencia Multivalor y Cuarta Forma Normal Proceso Total
Resumen de 1FN, 2FN y 3FN Primera Forma Normal (1FN) Todos los atributos de cada tupla contienen un solo valor tomado de sus dominios respectivos (valores atómicos). Segunda Forma Normal (2FN) Es 1FN y cada atributo no clave de la relación es total y funcionalmente dependiente (DFC) de su clave primaria. Tercera Forma Normal (3FN) Es 2FN y ningún atributo no-clave en la relación esta en DF con algún otro atributo no-clave.
Forma Normal Boyce/Codd Clave Candidata: Es un atributo o conjunto de atributos que pueden representar de forma única a cada registro de una entidad o relación. Cuando en una relación hay más de una clave candidata, una se designa como clave primaria.
Forma Normal Boyce/Codd ASESORIA Restricciones: Para cada curso (C), cada estudiante(E), tiene un solo asesor (A) Cada curso tiene varios asesores (A), pero cada profesor asesora en un solo curso N Estudiante Gómez Gómez Pérez Pérez Ramos Ramos N Curso Mate I  Física Mate I Álgebra Física Mate I N Asesor Arias Flores Arias Sánchez Flores García
Forma Normal Boyce/Codd Para cada curso, cada estudiante tiene un solo asesor (E, C) A Cada profesor asesora en un solo curso (pero cada curso tiene varios asesores) (E, A) C
Existen dos clave candidatas que se traslapan o están sobrepuestas (E,C) y (E,A). Tenemos además la dependencia funcional: A   C Forma Normal Boyce/Codd
Anomalías de eliminación   (Identifique alguna) El problema existe porque hay un atributo que es determinante pero no clave candidata: N Asesor Es conveniente crear dos relaciones nuevas: ESTUDIANTE_ASESOR ( E ,  A ) y ASESOR_CURSO ( A ,C) Forma Normal Boyce/Codd
Forma Normal Boyce/Codd ASESOR- ESTUDIANTE ASESORIA ASESOR_CURSO NEstudiante Gómez Gómez Pérez Pérez Ramos Ramos N Asesor Arias  Flores Arias Sánchez Flores García NEstudiante Gómez Gómez Pérez Pérez Ramos Ramos NCurso Mate I  Física Mate I Álgebra Física Mate I NAsesor Arias Flores Arias Sánchez Flores García N Asesor Arias Flores Sánchez García Curso Mate I  Física Álgebra Mate I
Forma Normal Boyce/Codd Una relación está en forma normal Boyce Codd (BCFN) si y solo si todo determinante es una clave candidata.
Forma Normal Boyce/Codd PROYECTO_TAREA_EMPLEADO REGLAS : Para cada proyecto, una tarea es encomendada a un solo empleado, aún cuando el empleado esté en varios proyectos, Un proyecto está asociado a distintas tareas, Un empleado se especializa en un tipo de tarea,  Una misma tarea puede ser desarrollada por distintos empleados en distintos proyectos. Proyecto P01 P01 P15 P20 P30 Tarea análisis calidad diseño análisis análisis  Empleado Juana Paz Mario Gómez Ana Llanos Juana Paz Ramón Díaz
Esta relación tiene dos claves candidatas sobrepuestas:  (Proyecto, Tarea) y (Proyecto, Empleado),  Existe un determinante de Tarea que es Empleado, pero Empleado  no  es clave candidata. Empleado  Tarea Forma Normal Boyce/Codd
Forma Normal Boyce/Codd Anomalías de inserción. ¿Cuáles? Anomalías de eliminación. ¿Cuáles? El problema existe porque hay un atributo que es determinante pero no clave candidata: Empleado Creamos dos relaciones nuevas: PROYECTO_EMPLEADO  y EMPLEADO_TAREA
Forma Normal Boyce/Codd PROYECTO_TAREA_EMPLEADO PROYECTO_EMPLEADO EMPLEADO_TAREA Proyecto P01 P01 P15 P20 P30 Empleado Juana Paz Mario Gómez Ana Llanos Juana Paz Ramón Díaz Proyecto P01 P01 P15 P20 P30 Tarea análisis calidad diseño análisis análisis  Empleado Juana Paz Mario Gómez Ana Llanos Juana Paz Ramón Díaz Empleado Juana Paz Mario Gómez Ana Llanos Ramón Díaz Tarea análisis calidad Diseño análisis
Forma Normal Boyce/Codd EXAMEN REGLAS : No hay empates; es decir, dos estudiantes no pueden ocupar la misma posición en la misma materia. Materia Estudiante Posición Lengua Pérez 5 Matemática Pérez 1 Lengua Gómez 1 Matemática Gómez 3 Historia Pérez 2 Historia Gómez 1
Esta relación tiene dos claves candidatas sobrepuestas, de acuerdo con las reglas dadas: (Estudiante, Materia) y (Materia, Posición),  Forma Normal Boyce/Codd Sin embargo, esta relación  si está  en BCFN porque estas claves candidatas son los únicos determinantes.
Dependencia Multivalor y Cuarta Forma Normal Dependencia Multivalor Dada una relación R, se dice que un atributo R.y es dependiente multivalor (DMV) de un atributo R.x, si un rango específico de valores de y está determinado por un valor específico de x,  con independencia del resto de atributos de R Se lee: “R.y es multivalor  de Rx” o  “Rx multidetermina a R.y”. Rx R.y
Dependencia Multivalor Cada  Curso  tiene un conjunto definido de  Profesores  y un conjunto de  Textos. Los  profesores  son independientes de los  textos. Un  profesor  puede dictar varios  cursos , y un  texto  podría emplearse para más de una materia Curso Profesor Texto Química Moreno Química Orgánica Mora Físico Química Matemáticas Merino Análisis Vectorial Álgebra Trigonometría
Dependencia Multivalor CURSO_PROFESOR_TEXTO Esta relación especifica que: el curso impartido puede ser dictado por varios profesores utilizando varios textos”.  Existen dos DMV: Curso Profesor Texto Química Moreno Físico Química Química Moreno Química Orgánica Química Mora Físico Química Química Mora Química Orgánica Matemáticas Merino Análisis Vectorial Matemáticas Merino Álgebra Matemáticas Merino Trigonometría Curso Profesor  y  Curso Texto
Tratamiento de las DMV La redundancia de datos causada por la DMV, se puede eliminar siguiendo  uno  de los siguientes métodos: Crear una nueva relación para cada atributo DMV. Curso Profesor  Curso Texto R1 = ( Curso ,  Profesor ) R2 = ( Curso ,  Texto )
Tratamiento de las DMV Reemplazar un atributo DMV con atributos funcionalmente dependientes DF. Curso   (Texto1, Texto2, Texto3) R3 = ( Curso , texto1, texto2, texto3)
Tratamiento de las DMV Crear una nueva relación para cada atributo DMV. Curso Profesor  Curso Texto Curso Química Química Matemáticas Profeso r Moreno Mora Merino Curso Química Química Matemática Matemática Matemática Texto Físico Química Química Orgánica Análisis Vectorial Algebra Trigonometría
Tratamiento de las DMV Reemplazar un atributo DMV con atributos funcionalmente dependientes DF. Curso Química Química Matemáticas Texto 1 Físico Química Química Orgánica Análisis Vectorial Texto 2 Química Orgánica Físico Química Algebra Texto 3 Trigonometría Curso   (Texto1, Texto2, Texto3)
Cuarta Forma Normal Una relación está en cuarta forma normal (4FN) si es BCFN y no contiene dependencias multivalor.
Cuarta Forma Normal - Ejemplo ACTIVIDADES C_Alumno N_Deporte N_Arte Z502010 Basquet Teatro Z502010 Basquet Canto Z502010 Gimnasia Teatro Z502010 Gimnasia Canto Z510394 Atletismo Danza Z510394 Atletismo Teatro Z510394 Atletismo Mimo Z510394 Basquet Danza Z510394 Basquet Teatro Z510394 Basquet Mimo
4 FN - Ejemplo Si el número de valores repetidos en DMV es grande  Se crea una nueva relación para el atributo DMV y su clave principal C_Alumno N_Deporte N_Arte Deporte ( C_Alumno,   N_Deporte )
4 FN - Ejemplo Si el número de valores repetidos en DMV es pequeño y específico  c/u de los valores del atributo DMV se representa como un atributo dentro del mismo registro Arte ( C_Alumno , N_Arte_1, N_Arte_2, N_Arte_3) Deporte ( C_Alumno ,  N_Deporte )
4 FN - Ejemplo Actividades Deporte C_Alumno N_Arte_1 N_Arte_2 N_Arte_3 Z502010 Teatro Canto Z510394 Danza Teatro Mimo C_Alumno N_Deporte Z502010 Basquet Z502010 Gimnasia Z510394 Atletismo Z510394 Basquet
Cuarta Forma Normal - Ejemplo NACIMIENTOS En un nacimiento nace un niño (los mellizos se consideran dos nacimientos ) . En un nacimiento hay una sola madre, y pueden atender el parto una o más enfermeras y uno o más  médicos . R = ( bebe , madre,  enfermera ,  médico )
Cuarta Forma Normal - Ejemplo NACIMIENTOS Normalizando: R1 = ( bebe , madre) R2 = ( bebe ,  enfermera ,  médico ) No hay DT, y está en FNBC pero e n R2 tenemos las dependencias multivaloradas: bebe enfermera bebe médico
Cuarta Forma Normal - Ejemplo NACIMIENTOS R 1  = ( bebe , madre)   R2 = ( bebe ,  enfermera ,  médico) BEBE   ENFERMERA MÉDICO Bebe1   Silva Zapata Bebe1   Silva Fuentes Bebe1   Silva  García Bebe1   Gómez Zapata Bebe1   Gómez  Fuentes Bebe1   Gómez   García  BEBE   MADRE Bebe1   Sra. López
Cuarta Forma Normal - Ejemplo NACIMIENTOS Procedimientos alternativos: Crear una nueva relación para cada atributo DMV. R3 = ( bebe ,  médico )   R4 = ( bebe ,  enfermera ) Bebe Médico Bebe 1 Zapata Bebe 1 Fuentes Bebe 1 García Bebe   Enfermera Bebe 1 Silva Bebe 1 Gómez
Cuarta Forma Normal - Ejemplo NACIMIENTOS Reemplazar un atributo DMV con atributos funcionalmente dependientes DF. R5 = ( bebe , médico1, médico2, médico3) R6 = ( bebe , enfermera1, enfermera2) R5 R6 Bebe   Enfermera1  Enfermera2  Bebe 1 Silva   Gómez    Bebe   Médico1  Médico2  Médico3 Bebe 1  Zapata   Fuentes   García
Normalización - Observaciones Universidad ( N-universidad , Director,  Asistente ) Una universidad tiene un director y de uno a tres asistentes del director. Luego: PK(Universidad) = (N_universidad, Asistente) Director depende únicamente de N_universidad (no está en DFC). Por lo tanto, Universidad no es 2FN.
Normalización - Observaciones Universidad ( N-universidad , Director,  Asistente ) Normalizando: Alternativa 1: Universidad’ = ( N-universidad , Director) Asistente = ( N-universidad ,  Asistente ) Si se desea conocer los datos de una universidad debe accederse por lo menos a dos registros.
Normalización - Observaciones Alternativa 2: Universidad’’ = ( N-universidad , Director, Asistente1, Asistente2, Asistente3) Consultas más complejas de elaborar que con la alternativa # 1.
Normalización Sin Normalizar Datos almacenados redundantemente en archivo  no plano 1FN La relación tiene registros por separado para cada valor en cada campo del registro, o cada campo de un registro contiene un solo valor 2FN Cada atributo depende total y funcionalmente de su clave principal 3FN Ningún atributo no-clave depende transitivamente de su clave principal  BCFN Todo determinante existente en la relación es clave candidata 4FN La relación no contiene dependencias multivaloradas
Reglas de Inferencia para Dependencias Funcionales RI1, RI2 y RI3 se conocen como los  Axiomas de Armstrong Regla reflexiva RI1: Si X   Y, entonces X    Y Regla de aumento RI2: {X  Y}|= XZ   YZ Regla transitiva RI3: {X  Y, Y  Z}|= X   Z Regla de descomposición o proyectiva RI4: {X  YZ}|= X  Z Regla de unión o aditiva RI5: {X  Y, X  Z}|= X  YZ Regla pseudotransitiva RI6: {X  Y, WY  Z}|= WX  Z
Dados dos atributos A y B, puede ocurrir que: A    B y B    A Se determinan entre sí, en una relación de uno a uno. A    B, pero B no    A Uno determina al otro, por lo que tienen una relación de muchos a uno A no    B, y B no    A No están relacionados funcionalmente, por lo que tienen una relación de atributos de muchos a muchos. Resumen del Análisis de las Dependencias Funcionales
Resumen del Análisis de las Dependencias Funcionales Uno a uno Muchos a uno Muchos a muchos Definición de la relación R(A,B) S(C, D) T(E, F) Dependencias A  B B  A C  D D  C F  E E  F Clave A o B C (E, F) Regla para agregar otro atributo A o B  C C  E (E, F)  G
Proceso Total de Normalización  (Diagrama de Dependencias) Elaborar el diagrama que muestre las dependencias funcionales y multivaloradas entre los atributos. Separar las relaciones DMV de un atributo y su determinante en otra nueva relación. Eliminar atributos no-clave para que todos los no-clave en las relaciones divididas sean total y funcionalmente dependientes de la clave principal. Separar las no-claves transitivamente dependientes
PASO 1. Construir diagrama de dependencias según la semántica de los datos: Proceso Total de Normalización  (Diagrama de Dependencias) Sea la relación  R1  (A, B, C, D, E, F, G, H, I), con las siguientes dependencias: H es DF de (A, B) I y C son DFC de A D es DMV de A E y F son DF de B G es DF de F y DT de B Como D es DMV de A,  PK(R1) = (A, B, D) A B C D E F G H I
PASO 2. Separar las relaciones DMV: Proceso Total de Normalización  (Diagrama de Dependencias) R2: ( A ,  B , C, E, F, G, H, I) A B C E F G H I A D R3: ( A ,  D )
PASO 3. Separar no-claves que no son totalmente dependientes de la clave principal: Proceso Total de Normalización  (Diagrama de Dependencias) A B H R4: ( A ,  B , H) A D R3: ( A ,  D ) B E F G R5: ( B , E, F, G) A I C R6: ( A , I, C)
PASO 4. Eliminar dependencia transitiva en R5:  Proceso Total de Normalización  (Diagrama de Dependencias) A D R3: ( A ,  D ) A B H R4: ( A ,  B , H) B E F R7: ( B , E, F) A I C R6: ( A , I, C) F G R8: ( F , G)
Proceso con Diagrama de Dependencias CLIENTE C Cliente N Cliente N Tipo_documento # documento N Dirección_envío $ Linea_Credito C Tipo_cliente N Tipo_cliente C Clasificación N Tipo_Credito $ Tipo_credito PK: (Conjunto mínimo de atributos determinantes + Atributos en DMV) =  (C Cliente, Ndirección_envío, NTipo_Credito)
Proceso con Diagrama de Dependencias Paso 2:  Tratamiento de las DMV C Cliente  N dirección_envío Dirección de Cliente : ( C Cliente ,  N Dirección_envío )
Proceso con Diagrama de Dependencias Paso 3 : tratamiento de las DFC (C Cliente, N Tipo_Credito)  $ Tipo_Credito Deuda de Cliente : ( C Cliente ,  N Tipo_credito , $ Tipo_Credito) C Cliente  (N Cliente, N Tipo_documento, # Documento, $_Linea_credito, CTipo_cliente, Ntipo_cliente,  C_Clasificación) Cliente : ( C Cliente , N Cliente, N Tipo_documento, # Documento, $_Linea_credito, C Tipo_cliente, Ntipo_cliente,  C_Clasificación)
Proceso con Diagrama de Dependencias Paso 4 : tratamiento de las DT C Tipo_cliente  N TipoCliente Tipo de Cliente : ( C Tipo_cliente , N TipoCliente)
Proceso con Diagrama de Dependencias Conjunto resultante de relaciones: Cliente : ( C Cliente , N Cliente, N Tipo_documento, # Documento, $_Linea_credito, C Tipo_cliente,  C_Clasificación) Dirección de Cliente : ( C Cliente ,  N Dirección_envío ) Deuda de Cliente : ( C Cliente ,  N Tipo_credito , $ Tipo_Credito) Tipo de Cliente : ( C Tipo_cliente , N TipoCliente)
Objetivos Generales de la Normalización Eliminar ciertos tipos de redundancia. Evitar ciertas anomalías en la actualización de datos. Producir un diseño que sea una “buena” representación del mundo real: que sea fácil de entender intuitivamente y constituya una buena base para un crecimiento futuro. Simplificar la imposición de ciertas reglas de integridad.

Normalizacion boyce codd_4_fn

  • 1.
    Base de Datos Profesor: MSC Luis Serna Jherry
  • 2.
    Normalización Proceso deNormalización. Forma Normal Boyce/Codd. Dependencia Multivalor y Cuarta Forma Normal Proceso Total
  • 3.
    Resumen de 1FN,2FN y 3FN Primera Forma Normal (1FN) Todos los atributos de cada tupla contienen un solo valor tomado de sus dominios respectivos (valores atómicos). Segunda Forma Normal (2FN) Es 1FN y cada atributo no clave de la relación es total y funcionalmente dependiente (DFC) de su clave primaria. Tercera Forma Normal (3FN) Es 2FN y ningún atributo no-clave en la relación esta en DF con algún otro atributo no-clave.
  • 4.
    Forma Normal Boyce/CoddClave Candidata: Es un atributo o conjunto de atributos que pueden representar de forma única a cada registro de una entidad o relación. Cuando en una relación hay más de una clave candidata, una se designa como clave primaria.
  • 5.
    Forma Normal Boyce/CoddASESORIA Restricciones: Para cada curso (C), cada estudiante(E), tiene un solo asesor (A) Cada curso tiene varios asesores (A), pero cada profesor asesora en un solo curso N Estudiante Gómez Gómez Pérez Pérez Ramos Ramos N Curso Mate I Física Mate I Álgebra Física Mate I N Asesor Arias Flores Arias Sánchez Flores García
  • 6.
    Forma Normal Boyce/CoddPara cada curso, cada estudiante tiene un solo asesor (E, C) A Cada profesor asesora en un solo curso (pero cada curso tiene varios asesores) (E, A) C
  • 7.
    Existen dos clavecandidatas que se traslapan o están sobrepuestas (E,C) y (E,A). Tenemos además la dependencia funcional: A C Forma Normal Boyce/Codd
  • 8.
    Anomalías de eliminación (Identifique alguna) El problema existe porque hay un atributo que es determinante pero no clave candidata: N Asesor Es conveniente crear dos relaciones nuevas: ESTUDIANTE_ASESOR ( E , A ) y ASESOR_CURSO ( A ,C) Forma Normal Boyce/Codd
  • 9.
    Forma Normal Boyce/CoddASESOR- ESTUDIANTE ASESORIA ASESOR_CURSO NEstudiante Gómez Gómez Pérez Pérez Ramos Ramos N Asesor Arias Flores Arias Sánchez Flores García NEstudiante Gómez Gómez Pérez Pérez Ramos Ramos NCurso Mate I Física Mate I Álgebra Física Mate I NAsesor Arias Flores Arias Sánchez Flores García N Asesor Arias Flores Sánchez García Curso Mate I Física Álgebra Mate I
  • 10.
    Forma Normal Boyce/CoddUna relación está en forma normal Boyce Codd (BCFN) si y solo si todo determinante es una clave candidata.
  • 11.
    Forma Normal Boyce/CoddPROYECTO_TAREA_EMPLEADO REGLAS : Para cada proyecto, una tarea es encomendada a un solo empleado, aún cuando el empleado esté en varios proyectos, Un proyecto está asociado a distintas tareas, Un empleado se especializa en un tipo de tarea, Una misma tarea puede ser desarrollada por distintos empleados en distintos proyectos. Proyecto P01 P01 P15 P20 P30 Tarea análisis calidad diseño análisis análisis Empleado Juana Paz Mario Gómez Ana Llanos Juana Paz Ramón Díaz
  • 12.
    Esta relación tienedos claves candidatas sobrepuestas: (Proyecto, Tarea) y (Proyecto, Empleado), Existe un determinante de Tarea que es Empleado, pero Empleado no es clave candidata. Empleado Tarea Forma Normal Boyce/Codd
  • 13.
    Forma Normal Boyce/CoddAnomalías de inserción. ¿Cuáles? Anomalías de eliminación. ¿Cuáles? El problema existe porque hay un atributo que es determinante pero no clave candidata: Empleado Creamos dos relaciones nuevas: PROYECTO_EMPLEADO y EMPLEADO_TAREA
  • 14.
    Forma Normal Boyce/CoddPROYECTO_TAREA_EMPLEADO PROYECTO_EMPLEADO EMPLEADO_TAREA Proyecto P01 P01 P15 P20 P30 Empleado Juana Paz Mario Gómez Ana Llanos Juana Paz Ramón Díaz Proyecto P01 P01 P15 P20 P30 Tarea análisis calidad diseño análisis análisis Empleado Juana Paz Mario Gómez Ana Llanos Juana Paz Ramón Díaz Empleado Juana Paz Mario Gómez Ana Llanos Ramón Díaz Tarea análisis calidad Diseño análisis
  • 15.
    Forma Normal Boyce/CoddEXAMEN REGLAS : No hay empates; es decir, dos estudiantes no pueden ocupar la misma posición en la misma materia. Materia Estudiante Posición Lengua Pérez 5 Matemática Pérez 1 Lengua Gómez 1 Matemática Gómez 3 Historia Pérez 2 Historia Gómez 1
  • 16.
    Esta relación tienedos claves candidatas sobrepuestas, de acuerdo con las reglas dadas: (Estudiante, Materia) y (Materia, Posición), Forma Normal Boyce/Codd Sin embargo, esta relación si está en BCFN porque estas claves candidatas son los únicos determinantes.
  • 17.
    Dependencia Multivalor yCuarta Forma Normal Dependencia Multivalor Dada una relación R, se dice que un atributo R.y es dependiente multivalor (DMV) de un atributo R.x, si un rango específico de valores de y está determinado por un valor específico de x, con independencia del resto de atributos de R Se lee: “R.y es multivalor de Rx” o “Rx multidetermina a R.y”. Rx R.y
  • 18.
    Dependencia Multivalor Cada Curso tiene un conjunto definido de Profesores y un conjunto de Textos. Los profesores son independientes de los textos. Un profesor puede dictar varios cursos , y un texto podría emplearse para más de una materia Curso Profesor Texto Química Moreno Química Orgánica Mora Físico Química Matemáticas Merino Análisis Vectorial Álgebra Trigonometría
  • 19.
    Dependencia Multivalor CURSO_PROFESOR_TEXTOEsta relación especifica que: el curso impartido puede ser dictado por varios profesores utilizando varios textos”. Existen dos DMV: Curso Profesor Texto Química Moreno Físico Química Química Moreno Química Orgánica Química Mora Físico Química Química Mora Química Orgánica Matemáticas Merino Análisis Vectorial Matemáticas Merino Álgebra Matemáticas Merino Trigonometría Curso Profesor y Curso Texto
  • 20.
    Tratamiento de lasDMV La redundancia de datos causada por la DMV, se puede eliminar siguiendo uno de los siguientes métodos: Crear una nueva relación para cada atributo DMV. Curso Profesor Curso Texto R1 = ( Curso , Profesor ) R2 = ( Curso , Texto )
  • 21.
    Tratamiento de lasDMV Reemplazar un atributo DMV con atributos funcionalmente dependientes DF. Curso (Texto1, Texto2, Texto3) R3 = ( Curso , texto1, texto2, texto3)
  • 22.
    Tratamiento de lasDMV Crear una nueva relación para cada atributo DMV. Curso Profesor Curso Texto Curso Química Química Matemáticas Profeso r Moreno Mora Merino Curso Química Química Matemática Matemática Matemática Texto Físico Química Química Orgánica Análisis Vectorial Algebra Trigonometría
  • 23.
    Tratamiento de lasDMV Reemplazar un atributo DMV con atributos funcionalmente dependientes DF. Curso Química Química Matemáticas Texto 1 Físico Química Química Orgánica Análisis Vectorial Texto 2 Química Orgánica Físico Química Algebra Texto 3 Trigonometría Curso (Texto1, Texto2, Texto3)
  • 24.
    Cuarta Forma NormalUna relación está en cuarta forma normal (4FN) si es BCFN y no contiene dependencias multivalor.
  • 25.
    Cuarta Forma Normal- Ejemplo ACTIVIDADES C_Alumno N_Deporte N_Arte Z502010 Basquet Teatro Z502010 Basquet Canto Z502010 Gimnasia Teatro Z502010 Gimnasia Canto Z510394 Atletismo Danza Z510394 Atletismo Teatro Z510394 Atletismo Mimo Z510394 Basquet Danza Z510394 Basquet Teatro Z510394 Basquet Mimo
  • 26.
    4 FN -Ejemplo Si el número de valores repetidos en DMV es grande Se crea una nueva relación para el atributo DMV y su clave principal C_Alumno N_Deporte N_Arte Deporte ( C_Alumno, N_Deporte )
  • 27.
    4 FN -Ejemplo Si el número de valores repetidos en DMV es pequeño y específico c/u de los valores del atributo DMV se representa como un atributo dentro del mismo registro Arte ( C_Alumno , N_Arte_1, N_Arte_2, N_Arte_3) Deporte ( C_Alumno , N_Deporte )
  • 28.
    4 FN -Ejemplo Actividades Deporte C_Alumno N_Arte_1 N_Arte_2 N_Arte_3 Z502010 Teatro Canto Z510394 Danza Teatro Mimo C_Alumno N_Deporte Z502010 Basquet Z502010 Gimnasia Z510394 Atletismo Z510394 Basquet
  • 29.
    Cuarta Forma Normal- Ejemplo NACIMIENTOS En un nacimiento nace un niño (los mellizos se consideran dos nacimientos ) . En un nacimiento hay una sola madre, y pueden atender el parto una o más enfermeras y uno o más médicos . R = ( bebe , madre, enfermera , médico )
  • 30.
    Cuarta Forma Normal- Ejemplo NACIMIENTOS Normalizando: R1 = ( bebe , madre) R2 = ( bebe , enfermera , médico ) No hay DT, y está en FNBC pero e n R2 tenemos las dependencias multivaloradas: bebe enfermera bebe médico
  • 31.
    Cuarta Forma Normal- Ejemplo NACIMIENTOS R 1 = ( bebe , madre) R2 = ( bebe , enfermera , médico) BEBE ENFERMERA MÉDICO Bebe1 Silva Zapata Bebe1 Silva Fuentes Bebe1 Silva García Bebe1 Gómez Zapata Bebe1 Gómez Fuentes Bebe1 Gómez García BEBE MADRE Bebe1 Sra. López
  • 32.
    Cuarta Forma Normal- Ejemplo NACIMIENTOS Procedimientos alternativos: Crear una nueva relación para cada atributo DMV. R3 = ( bebe , médico ) R4 = ( bebe , enfermera ) Bebe Médico Bebe 1 Zapata Bebe 1 Fuentes Bebe 1 García Bebe Enfermera Bebe 1 Silva Bebe 1 Gómez
  • 33.
    Cuarta Forma Normal- Ejemplo NACIMIENTOS Reemplazar un atributo DMV con atributos funcionalmente dependientes DF. R5 = ( bebe , médico1, médico2, médico3) R6 = ( bebe , enfermera1, enfermera2) R5 R6 Bebe Enfermera1 Enfermera2 Bebe 1 Silva Gómez Bebe Médico1 Médico2 Médico3 Bebe 1 Zapata Fuentes García
  • 34.
    Normalización - ObservacionesUniversidad ( N-universidad , Director, Asistente ) Una universidad tiene un director y de uno a tres asistentes del director. Luego: PK(Universidad) = (N_universidad, Asistente) Director depende únicamente de N_universidad (no está en DFC). Por lo tanto, Universidad no es 2FN.
  • 35.
    Normalización - ObservacionesUniversidad ( N-universidad , Director, Asistente ) Normalizando: Alternativa 1: Universidad’ = ( N-universidad , Director) Asistente = ( N-universidad , Asistente ) Si se desea conocer los datos de una universidad debe accederse por lo menos a dos registros.
  • 36.
    Normalización - ObservacionesAlternativa 2: Universidad’’ = ( N-universidad , Director, Asistente1, Asistente2, Asistente3) Consultas más complejas de elaborar que con la alternativa # 1.
  • 37.
    Normalización Sin NormalizarDatos almacenados redundantemente en archivo no plano 1FN La relación tiene registros por separado para cada valor en cada campo del registro, o cada campo de un registro contiene un solo valor 2FN Cada atributo depende total y funcionalmente de su clave principal 3FN Ningún atributo no-clave depende transitivamente de su clave principal BCFN Todo determinante existente en la relación es clave candidata 4FN La relación no contiene dependencias multivaloradas
  • 38.
    Reglas de Inferenciapara Dependencias Funcionales RI1, RI2 y RI3 se conocen como los Axiomas de Armstrong Regla reflexiva RI1: Si X  Y, entonces X  Y Regla de aumento RI2: {X  Y}|= XZ  YZ Regla transitiva RI3: {X  Y, Y  Z}|= X  Z Regla de descomposición o proyectiva RI4: {X  YZ}|= X  Z Regla de unión o aditiva RI5: {X  Y, X  Z}|= X  YZ Regla pseudotransitiva RI6: {X  Y, WY  Z}|= WX  Z
  • 39.
    Dados dos atributosA y B, puede ocurrir que: A  B y B  A Se determinan entre sí, en una relación de uno a uno. A  B, pero B no  A Uno determina al otro, por lo que tienen una relación de muchos a uno A no  B, y B no  A No están relacionados funcionalmente, por lo que tienen una relación de atributos de muchos a muchos. Resumen del Análisis de las Dependencias Funcionales
  • 40.
    Resumen del Análisisde las Dependencias Funcionales Uno a uno Muchos a uno Muchos a muchos Definición de la relación R(A,B) S(C, D) T(E, F) Dependencias A B B A C D D C F E E F Clave A o B C (E, F) Regla para agregar otro atributo A o B C C E (E, F) G
  • 41.
    Proceso Total deNormalización (Diagrama de Dependencias) Elaborar el diagrama que muestre las dependencias funcionales y multivaloradas entre los atributos. Separar las relaciones DMV de un atributo y su determinante en otra nueva relación. Eliminar atributos no-clave para que todos los no-clave en las relaciones divididas sean total y funcionalmente dependientes de la clave principal. Separar las no-claves transitivamente dependientes
  • 42.
    PASO 1. Construirdiagrama de dependencias según la semántica de los datos: Proceso Total de Normalización (Diagrama de Dependencias) Sea la relación R1 (A, B, C, D, E, F, G, H, I), con las siguientes dependencias: H es DF de (A, B) I y C son DFC de A D es DMV de A E y F son DF de B G es DF de F y DT de B Como D es DMV de A, PK(R1) = (A, B, D) A B C D E F G H I
  • 43.
    PASO 2. Separarlas relaciones DMV: Proceso Total de Normalización (Diagrama de Dependencias) R2: ( A , B , C, E, F, G, H, I) A B C E F G H I A D R3: ( A , D )
  • 44.
    PASO 3. Separarno-claves que no son totalmente dependientes de la clave principal: Proceso Total de Normalización (Diagrama de Dependencias) A B H R4: ( A , B , H) A D R3: ( A , D ) B E F G R5: ( B , E, F, G) A I C R6: ( A , I, C)
  • 45.
    PASO 4. Eliminardependencia transitiva en R5: Proceso Total de Normalización (Diagrama de Dependencias) A D R3: ( A , D ) A B H R4: ( A , B , H) B E F R7: ( B , E, F) A I C R6: ( A , I, C) F G R8: ( F , G)
  • 46.
    Proceso con Diagramade Dependencias CLIENTE C Cliente N Cliente N Tipo_documento # documento N Dirección_envío $ Linea_Credito C Tipo_cliente N Tipo_cliente C Clasificación N Tipo_Credito $ Tipo_credito PK: (Conjunto mínimo de atributos determinantes + Atributos en DMV) = (C Cliente, Ndirección_envío, NTipo_Credito)
  • 47.
    Proceso con Diagramade Dependencias Paso 2: Tratamiento de las DMV C Cliente N dirección_envío Dirección de Cliente : ( C Cliente , N Dirección_envío )
  • 48.
    Proceso con Diagramade Dependencias Paso 3 : tratamiento de las DFC (C Cliente, N Tipo_Credito) $ Tipo_Credito Deuda de Cliente : ( C Cliente , N Tipo_credito , $ Tipo_Credito) C Cliente (N Cliente, N Tipo_documento, # Documento, $_Linea_credito, CTipo_cliente, Ntipo_cliente, C_Clasificación) Cliente : ( C Cliente , N Cliente, N Tipo_documento, # Documento, $_Linea_credito, C Tipo_cliente, Ntipo_cliente, C_Clasificación)
  • 49.
    Proceso con Diagramade Dependencias Paso 4 : tratamiento de las DT C Tipo_cliente N TipoCliente Tipo de Cliente : ( C Tipo_cliente , N TipoCliente)
  • 50.
    Proceso con Diagramade Dependencias Conjunto resultante de relaciones: Cliente : ( C Cliente , N Cliente, N Tipo_documento, # Documento, $_Linea_credito, C Tipo_cliente, C_Clasificación) Dirección de Cliente : ( C Cliente , N Dirección_envío ) Deuda de Cliente : ( C Cliente , N Tipo_credito , $ Tipo_Credito) Tipo de Cliente : ( C Tipo_cliente , N TipoCliente)
  • 51.
    Objetivos Generales dela Normalización Eliminar ciertos tipos de redundancia. Evitar ciertas anomalías en la actualización de datos. Producir un diseño que sea una “buena” representación del mundo real: que sea fácil de entender intuitivamente y constituya una buena base para un crecimiento futuro. Simplificar la imposición de ciertas reglas de integridad.

Notas del editor

  • #2 Introducción a las Bases de Datos 26 de abril de 2011 UPC - Ingeniería de Sistemas
  • #3 Normalización 26/04/11 UPC-Ingeniería de Sistemas
  • #38 Normalización 26/04/11 UPC-Ingeniería de Sistemas
  • #47 Normalización 26/04/11 UPC-Ingeniería de Sistemas Reglas: Un cliente puede tener varias direcciones de envío, y la misma dirección de envío puede corresponder a más de un cliente (esposos, hermanos, etc.) Cada cliente tiene asignada una línea de crédito Un cliente puede tener varios tipos de crédito (por cuotas, rotativo, etc.) y para cada tipo de crédito tiene un saldo ($ Tipo_credito)