07/05/2015Curso Bases de Datos1 Normalización Francisco Moreno.

Slides:



Advertisements
Presentaciones similares
IBD Clase 13.
Advertisements

Métrica v2.1 : Técnica - Diagrama de Flujo de Datos (DFD)
Normalizaciones de Bases de Datos
Modelo Entidad Relación
Rocío Contreras Águila Primer Semestre 2010
Teórico: Normalización
Costos y tarifas en telecomunicaciones
1.2 Decisiones de la comunicación organizacional
MODELO RELACIONAL.
Primera Forma Normal En una relación (tabla) no pueden existir grupos de repetición, es decir, un atributo no puede tomar más de un valor del dominio subyacente:
Maestría en Bioinformática Bases de Datos y Sistemas de Información Fundamentos de Normalización Ing. Alfonso Vicente, PMP
FORMA NORMAL DE BOYCE-CODD (BCNF)
Teoría de Bases de Datos
Dependencias Funcionales
MODELO RELACIONAL.
4.2 Dominios atómicos y la primera forma normal.
Universidad Interamericana de P.R. Departamento Informática Curso 3850 Dr. Rafael Nieves.
ANÁLISIS Y DISEÑO DESDE UNA PERSPECTIVA ORIENTADA A OBJETOS Alan Vargas.
NORMALIZACIÓN DE DATOS
Tema 2: Métodos de ajuste
Normalización Preparó: Ismael Castañeda Fuentes
Tu Presentación Profesional
MÓDULO II: FUNDAMENTOS DE BASE DE DATOS
Métrica v2.1 Técnicas: Teoría de la Normalización.
Diseño de Bases de Datos
TIPOS DE MODELOS DE REGRESIÓN Y SUPUESTOS PARA EL MODELO A
NORMALIZACION La teoría de la normalización, cuyas tres primeras formas normales fueron introducidas por Codd desde sus primeros trabajos, elimina dependencias.
Diseño y análisis de algoritmos
Toma de Decisiones Gerenciales
(Organización y Manejo de Archivos)
Métrica v2.1 Técnicas: Modelado de datos (Parte 2)
MODELADO DE DATOS (PARTE 2) Viviana Poblete L. Modelo de Datos I.
NORMALIZACIÓN DE BASE DE DATOS Flor Elena Canales Alvarado Autor:
John Freddy Duitama Muñoz Juan Camilo Alzate Restrepo Facultad de Ingeniería U.de.A. John Freddy Duitama Muñoz Juan Camilo Alzate Restrepo Facultad de.
Diseño de Bases de Datos Relacionales
NORMALIZACION DE BASES DE DATOS
Normalización en una base de datos
Lic. en Inf. Manuel Álvaro Pacheco Hoyo. Una base de datos o banco de datos (en inglés: database) es un conjunto de datos pertenecientes a un mismo contexto.
Base de datos.
SEGUNDA FORMA NORMAL Cod Alumno Universidad Nombre Apellido Años 10
Chapter 13 Normalization Transparencies © Pearson Education Limited 1995, 2005.
INSTITUTO TECNOLÓGICO DE TIJUANA DEPARTAMENTO DE SISTEMAS Y COMPUTACIÓN SEMESTRE ENERO-JUNIO 2014 CARRERA: INGENIERÍA EN TECNOLOGÍAS DE LA INFORMACIÓN.
Diseño de una Base de Datos
Diseño de Bases de Datos
Diseño de bases relacionales
COLEGIO NACIONAL DE EDUCACIÓN PROFESIONAL TÉCNICA SANTIAGO TILAPA N0 126   CALIDAD TOTAL   PROFESOR: MARCO ANTONIO GUERRERO CLEMENTE PROYECTO: PRINCIPIOS.
DISEÑO DE BASES DE DATOS
Tema 5 Diseño de Bases de Datos Universidad de Murcia
DISEÑO DE BASES DE DATOS
CICLO DE VIDA Y NORMAALIZACION DE UN SISTEMA DE BASE DE DATOS
GRUPO # 5 INTEGRANTES: JOHANA CAJAS TATIANA AMADOR FÁTIMA NARANJO
INTEGRANTES ANA INOSTROZA S. JONATAN MIQUELES P
Normalización Base de Datos I.
Diagramas.
NORMALIZACION DE DATOS
TEMA: Lote económico Ing. Larry D. Concha B.
Normalización de una BASE DE DATOS
Base de Datos.
Alumno: Israel Espinosa Jiménez Matricula: Licenciatura: TIC Asignatura: Análisis y Diseño de Sistemas Cuatrimestre: 3 Página 1 de 6.
Normalización Prof. Gloria Toro Oñate
problemas de la calidad del software
22/09/2015Curso Bases de Datos1 Normalización Francisco Moreno.
TEMA: DECISIONES BAJO RIESGO –TEORIA DE JUEGOS Ing. Larry D. Concha B.
Ingeniero Esp. Ricardo Cujar.
DISEÑO DE BASES DE DATOS (modelos para el diseño)
NORMALIZACIÓN.
Experiencia de Ecuador Opciones de desarrollo. Introducción La implementación de un sistema informático de contratación pública involucra dos grandes.
Bases de Datos I UNIVERSIDAD DEL VALLE. Contenido 5. Diseño de Sistemas de Bases de Datos  Diseño relacional  Formas normales  Proceso de creación.
Base de Datos I – Ing. Mary Carlota Bernal J. BASE DE DATOS I Normalización.
Normalización es un proceso que clasifica relaciones, objetos, formas de relación y demás elementos en grupos, en base a las características que cada.
Transcripción de la presentación:

07/05/2015Curso Bases de Datos1 Normalización Francisco Moreno

07/05/2015Curso Bases de Datos2 Normalización Es la técnica usada para diseñar “buenas” relaciones con el fin de minimizar: –cierto tipo de redundancia –el mantenimiento de los datos –el impacto de futuros cambios en los datos y en su ingreso Anomalías de inserción Anomalías de actualización y borrado

Normalización Nota: hoy en algunas aplicaciones se sigue una política de poca normalización. En tal caso, se debe estar siempre consciente de las posibles anomalías a las que esto puede conllevar. Antes de tomar la decisión de adoptar una política como la anterior, se debe dominar el proceso de normalización. El objetivo del curso es el diseño de bases de datos con un alto grado de normalización (mínimo BCNF  ver más adelante) 07/05/2015Curso Bases de Datos3

07/05/2015Curso Bases de Datos4 Anomalías Sea la relación: ENVÍO sede_ppalNIT producto cantidad IVA Med101 Leche 10 No Bog201Chorizo 29 Sí Med101 Yogur 12 Sí Med101Pasas 100 No Bog201Leche 12 No Bog201 Pasas 100 No Med128Gato 1 No CP Nota: un producto tiene o no IVA (sin importar el proveedor que lo suministre)

07/05/2015Curso Bases de Datos5 Supóngase que un proveedor que suministra 100 productos (distintos) cambia su sede principal, ¿qué implica esto? Supóngase que hay 50 proveedores de Leche y que esta se grava con IVA, ¿qué implica esto? ¿Qué pasa si se quiere ingresar un proveedor que todavía no ha suministrado algún producto? La misma pregunta anterior para un producto.

07/05/2015Curso Bases de Datos6 ¿Qué pasa si en el almacén ya no desean vender Gato pero desean preservar los datos del proveedor 128? ¿Qué pasa si en el almacén ya no desean negociar con el proveedor 128? ¿Qué pasa con los datos del producto Gato? ¿Cuántas veces dice la relación donde está la sede principal de cada proveedor? ¿Cuántas veces dice la relación si un producto tiene o no IVA?

07/05/2015Curso Bases de Datos7 Nótese que aunque esta relación representa el negocio, tiene aspectos que pueden ser inconvenientes. La idea de la normalización es diseñar relaciones que representen el negocio pero que al mismo tiempo eviten (en lo posible) aspectos (considerados anomalías en la normalización) como los anteriores.

07/05/2015Curso Bases de Datos8 Formas Normales Seis formas normales clásicas*: 1NF, 2NF, 3NF, BCNF, 4NF, 5NF Mientras una relación esté en una forma normal más alta “mucho mejor”. En la práctica usualmente es suficiente analizar y llevar la normalización hasta la BCNF. * Hay otras: EKNF ( Elementary key NF ), DKNF ( Domain-key NF ), 6NF y recientemente ETNF ( Essential tuple NF o “4.5NF” )

07/05/2015Curso Bases de Datos9 Formas Normales n n-1Si una relación satisface una forma normal n automáticamente satisface las n-1 formas normales anteriores, es decir, cada forma normal es “más fuerte” que sus predecesoras. El análisis de 2NF y 3NF se considera solo para relaciones con una sola clave candidata. Para relaciones con más de una clave candidata se aplica directamente BCNF (BCNF también es aplicable para relaciones con una sola clave candidata).

07/05/2015Curso Bases de Datos10 Primera Forma Normal Una relación está en 1NF si los valores de sus atributos son atómicos*. Toda relación está en 1NF (de lo contrario no sería una relación). Es la forma normal más débil, la menos “exigente”. * Aunque el concepto de atomicidad es muy elusivo.

07/05/2015Curso Bases de Datos11 Primera Forma Normal Ejemplo.Sea PROVEEDOR con atributos: NIT nombre sedes 1 Barbie {Cl 2 #1-3, Cl 30 #9-98} 2 Kitty {Av 5 #1-8, Cr 2 #3-2, Cr 1 #9-8} Si cada sede representa un valor semántico por sí mismo, entonces PROVEEDOR no es una relación y; por lo tanto, no está en 1NF.

07/05/2015Curso Bases de Datos12 Primera Forma Normal Solución: Relación SEDE dirección idprov Cl 2 #1-3 1 Cl 30 # Av 5 #1-8 2 Cr 2 #3-2 2 Cr 1 #9-8 2 Relación PROVEEDOR NIT nombre 1Barbie 2Kitty CP CF CP (acá se supone que dos proveedores no tienen su sede en la misma dirección, de lo contrario la CP sería compuesta)

Primera Forma Normal Nótese que en la relación SEDE se repite el NIT del proveedor por cada dirección que este tenga; sin embargo, esto NO ES UN PROBLEMA DE NORMALIZACIÓN. De hecho SEDE está altamente normalizada (incluso está en 5NF al igual que PROVEEDOR). 07/05/2015Curso Bases de Datos13

07/05/2015Curso Bases de Datos14 Segunda Forma Normal Una relación está en 2NF si y solo si está en 1NF y todos los atributos no clave* (si los hay) dependen funcionalmente por completo de la clave primaria. ¿Está la relación ENVÍO (diapositiva 4) en 2NF? Veamos: * Es decir, los atributos que no hacen parte de la clave primaria.

07/05/2015Curso Bases de Datos15 Diagrama de DF completas para la relación ENVÍO producto NIT sede_ppal IVA cant

07/05/2015Curso Bases de Datos16 Como los atributos IVA y sede_ppal no dependen funcionalmente por completo de la CP, la relación no está en 2NF Solución: Con las “flechas conflictivas” (flechas rojas) se crean relaciones adicionales Por lo tanto, el proceso de normalización se puede considerar como una eliminación de “flechas conflictivas”

07/05/2015Curso Bases de Datos17 producto NIT sede_ppal IVA cant RelaciónENVÍOmodificada Nueva relación PRODUCTO EMPRESA producto NIT Resultado de la partición

07/05/2015Curso Bases de Datos18 ¿Soluciona esta partición las anomalías mencionadas? ¿Están las relaciones resultantes en 2NF? ¿Los atributos producto y NIT en la relación ENVÍO qué características deben poseer (aparte de conformar lar CP de ENVÍO)?

07/05/2015Curso Bases de Datos19 Tercera Forma Normal Una relación está en 3NF si y solo si los atributos no clave (si los hay): Dependen funcionalmente por completo de la CP Son mutuamente independientes (es decir, no hay DF entre ellos)

07/05/2015Curso Bases de Datos20 Sea la relación: MATRÍCULA cédulanom_aficiónvalor 10Música100 20Pintura200 30Música100 40Pintura200 50Bolos100 Reglas del negocio: Cada persona solo puede elegir una afición El precio (valor) de la misma afición es el mismo para todas las personas Valor de la afición

07/05/2015Curso Bases de Datos21 ¿Qué inconvenientes puede tener la relación anterior? ¿Está en 2NF? ¿En 3NF? Veamos el diagrama: Dependencia entre atributos no clave cédulanom_afición valor

07/05/2015Curso Bases de Datos22 MATRÍCULA cédulanom_afición 10Música 20Pintura 30Música 40Pintura 50Bolos AFICIÓN nom_afición valor Música 100 Pintura 200 Bolos 100 CP CF Se hace la siguiente partición: Nótese que a diferencia de la relación anterior, aquí es posible insertar una afición que no haya sido elegida por los estudiantes.

07/05/2015Curso Bases de Datos23 ¿Desaparecen las anomalías analizadas en el nuevo esquema? El hecho de que en MATRÍCULA se repita el nombre de la afición por cada estudiante que la tome ¿es un problema de normalización?El hecho de que en MATRÍCULA se repita el nombre de la afición por cada estudiante que la tome ¿es un problema de normalización? ¿Qué pasaría si la partición se hiciese así: R1(cédula, nom_afición) y R2(cédula, valor) ? ¿Están en 3NF? ¿Qué pasaría si la partición se hiciese así: R1(cédula, valor) y R2(nom_afición, valor) ? ¿Están en 3NF?

07/05/2015Curso Bases de Datos24 BCNF Una relación está en BCNF si y solo si todo determinante es clave candidata Un determinante es un atributo del cual DF por completo otro atributo

07/05/2015Curso Bases de Datos25 Sea la relación: MATRÍCULA_SEMESTRE ced_estcarné materianota_def 10912Cálculo Historia Español Cálculo Química Español2.9

07/05/2015Curso Bases de Datos26 ¿Qué inconvenientes puede tener esta relación? ¿Cuáles son sus claves candidatas? Veamos el diagrama de DFs completas: carné ced_est materia nota_def

07/05/2015Curso Bases de Datos27 ¿Está en BCNF? ¿Cuáles son los determinantes? ¿Es cada uno de ellos una clave candidata? ¿Cómo se debe partir está relación?

07/05/2015Curso Bases de Datos28 4NF DMV: Dependencia Multivaluada. Dada una relación R con los atributos A, B y C, la DMV: A  > B Se cumple en R si y solo si el conjunto de valores de B correspondiente a un par dado (A, C) en R depende solo del valor de A y es independiente del valor de C. Pueden ser compuestos

07/05/2015Curso Bases de Datos29 Teorema del complemento. Sea una relación R(A, B, C) si se cumple que: A  > B entonces automáticamente se cumple: A  > C. Una DF es una DMV pero una DMV no necesariamente es una DF Una relación está en 4NF si y solo si está en BCNF y todas las DMVs en R son de hecho DFs

07/05/2015Curso Bases de Datos30 Ejemplo. Z Sea la relación Z: cursoprofesortexto FísicaÑoñoMB FísicaÑoñoPO FísicaDinoMB FísicaDinoPO Mat.ÑoñoMB Mat.ÑoñoAV Mat.ÑoñoTR ¿Qué se quiere representar con esta relación? ¿Qué inconvenientes puede tener? ¿Cuál es su CP? ¿Está en BCNF?

07/05/2015Curso Bases de Datos31 Veamos, por ejemplo, si en Z se cumple: curso  > texto Dada la pareja (Física, Ñoño) el conjunto de textos correspondientes es {MB, PO}. Dada la pareja (Física, Dino) el conjunto de textos correspondientes es {MB, PO}. análogaSi se mira cual es el conjunto de textos correspondiente a Física (sin importar el profesor) el resultado es: {MB, PO}. En forma análoga para Mat.

07/05/2015Curso Bases de Datos32 curso  > texto Por lo tanto, curso  > texto y por el curso  > profesor teorema del complemento curso  > profesor. ¿Cómo se debe partir Z para lograr 4NF? Solución: R1(curso, texto) y R2(curso, profesor)

Otro ejemplo, sea la relación: codpréstamocedcliente dirciudad 110Cl 1#3-1Cali 1 10Cl 9#2-2Medellín 210Cl 1#3-1 Cali 2 10Cl 9#2-2 Medellín 235Cr 5#1-2Bogotá 235Cl 1#3-1Cali 235Av 1#8-9Cali 335Cr 5#1-2 Bogotá 335Cl 1#3-1 Cali 335Av 1#8-9 Cali 07/05/2015Curso Bases de Datos33

Supóngase que siempre que un préstamo se le hace a un cliente (se permiten préstamos compartidos), este se registra con todas sus direcciones (dir y ciudad), entonces: cedcliente  > {dir, ciudad} cedcliente  > codpréstamo 07/05/2015Curso Bases de Datos34 B A C A