Maestría en Bioinformática Bases de Datos y Sistemas de Información Fundamentos de Normalización Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy.

Slides:



Advertisements
Presentaciones similares
IBD Clase 13.
Advertisements

Integridad de Las Bases de Datos
Normalizaciones de Bases de Datos
Bases de datos, Entidad de relación y normalizaciones
El modelo de datos relacional
Rocío Contreras Águila Primer Semestre 2010
Teórico: Normalización
Teórico: Modelo Relacional
Maestría en Bioinformática Bases de Datos y Sistemas de Información Diseño Conceptual Ing. Alfonso Vicente, PMP
MODELO RELACIONAL.
INTELIGENCIA ARTIFICIAL
Maestría en Bioinformática Bases de Datos y Sistemas de Información Calidad de Esquemas Ing. Alfonso Vicente, PMP
Maestría en Bioinformática Bases de Datos y Sistemas de Información Diseño Lógico Ing. Alfonso Vicente, PMP
Maestría en Bioinformática Bases de Datos y Sistemas de Información Fundamentos de Lógica Ing. Alfonso Vicente, PMP
Maestría en Bioinformática Bases de Datos y Sistemas de Información Del MER al MR Ing. Alfonso Vicente, PMP
MODELOS LÓGICOS : Modelo Relacional
FORMA NORMAL DE BOYCE-CODD (BCNF)
Teoría de Bases de Datos
MODELO RELACIONAL.
4.2 Dominios atómicos y la primera forma normal.
COMPUTACIÓN IV Alcalá Gaytán Erick Daniel Banda Salas Luis Rolando
Universidad Interamericana de P.R. Departamento Informática Curso 3850 Dr. Rafael Nieves.
NORMALIZACIÓN DE DATOS
Normalización Preparó: Ismael Castañeda Fuentes
Métrica v2.1 Técnicas: Teoría de la Normalización.
Diseño de Bases de Datos

NORMALIZACION La teoría de la normalización, cuyas tres primeras formas normales fueron introducidas por Codd desde sus primeros trabajos, elimina dependencias.
Integridad Referencial 1. Integridad referencial 2.
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.
“Como pasar automáticamente las visiones de datos de los usuarios a un esquema de datos en Tercera Forma Normal ” Luis Alvarez Adrián Arredondo Martín.
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
RESTRICCIONES Ing. Carolina Moreno Departamento de Sistemas Facultad de Electrónica y Telecomunicaciones Universidad del Cauca.
Diseño de bases relacionales
DISEÑO DE BASES DE DATOS
07/05/2015Curso Bases de Datos1 Normalización Francisco Moreno.
Base de Datos I. Definición: La normalización es un proceso en el cual se va comprobando el cumplimiento de una serie de reglas, que sirven para ayudar.
Restricciones de Integridad
INTEGRANTES ANA INOSTROZA S. JONATAN MIQUELES P
Sistemas de Información II Tema : Modelo Relacional Universidad Nacional de Luján Departamento de Ciencias Básicas División Estadísticas y Sistemas.
Normalización 1FN-2FN-3FN-FNBC.
Normalización Base de Datos I.
Normalización Base de Datos I.
NORMALIZACIÓN Prof. Gabriel Matonte.
NORMALIZACION DE DATOS
Normalización de una BASE DE DATOS
Normalización Base de Datos I.
Base de Datos.
Teórico: Pasaje del MER al MR
Normalización de Base de Datos
Normalización Prof. Gloria Toro Oñate
Bases de Datos Modelo Relacional.
22/09/2015Curso Bases de Datos1 Normalización Francisco Moreno.
Ingeniero Esp. Ricardo Cujar.
NORMALIZACION Téllez Arcos Diana Fátima. La normalización es el proceso de organizar los datos de una base de datos. Se incluye la creación de tablas.
NORMALIZACIÓN.
Modelo entidad/interrlación Tema 2. Parte 2. Modelo E/IR Utiliza un conjunto de símbolos y reglas para representar los datos y las relaciones entre ellos.
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:

Maestría en Bioinformática Bases de Datos y Sistemas de Información Fundamentos de Normalización Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy

Agenda ¿Qué es la normalización? ¿Por qué es importante? Anomalías de actualización Introducción Definiciones Formas normales

Agenda Dependencia funcional Atributos primos y no-primos Introducción Definiciones Formas normales

Agenda Primera forma normal Segunda forma normal Tercera forma normal Forma normal de Boyce-Codd Otras formas normales Introducción Definiciones Formas normales

Agenda ¿Qué es la normalización? ¿Por qué es importante? Anomalías de actualización Introducción Definiciones Formas normales

Introducción ¿Qué es la normalización? Es un proceso que se realiza sobre el modelo lógico para garantizar que el modelo cumple ciertas reglas Normalización En este proceso, las relaciones insatisfactorias se descomponen repartiendo sus atributos entre relaciones más pequeñas Requerimientos MER MR Mejor MR

Introducción ¿Qué es la normalización?

Introducción ¿Por qué es importante la normalización? Para garantizar la integridad de los datos Para evitar redundancia Para evitar anomalías de actualización ¿Qué problema tiene la siguiente instancia de relación? cédula nombre apellido ced_jefe nom_jefe ape_jefe 4.200.300-5 Juan Pérez 1.637.922-2 Severo García 3.181.348-6 María González 3.642.936-1 Martínez

Introducción Anomalías de actualización – inserción ¿Qué problemas puede haber al insertar un nuevo empleado? ¿Qué nos impide insertar la tupla: (‘2.032.287-4’, ‘Martín’, ‘Ramírez’, 2, ‘Sistemas’) ? ¿Cómo agregamos un departamento sin empleados? cédula nombre apellido id_dep nom_dep 4.200.300-5 Juan Pérez 1 Administración 3.181.348-6 María González 2 Ventas 3.642.936-1 Martínez

Introducción Anomalías de actualización – eliminación ¿Qué problemas puede haber al eliminar a Juan Pérez? cédula nombre apellido id_dep nom_dep 4.200.300-5 Juan Pérez 1 Administración 3.181.348-6 María González 2 Ventas 3.642.936-1 Martínez

Introducción Anomalías de actualización – modificación ¿Qué problemas puede haber al transferir a Juan Pérez a Ventas? cédula nombre apellido id_dep nom_dep 4.200.300-5 Juan Pérez 1 Administración 3.181.348-6 María González 2 Ventas 3.642.936-1 Martínez

Agenda Dependencia funcional Atributos primos y no-primos Introducción Definiciones Formas normales

Definiciones Dependencia funcional Una dependencia funcional es una restricción entre conjuntos de atributos de una relación (tabla). Sea R una relación, A y B conjuntos de atributos de R Decimos que A  B (A determina funcionalmente a B, o B depende funcionalmente de A) si y sólo si para cada tupla, los valores iguales de A corresponden a valores iguales de B Ejemplos: {cedula}  {nombre} {cedula}  {nombre, apellido}

Definiciones Dependencia funcional En nuestro ejemplo, podemos identificar varias dependencias funcionales: Note que {ced_jefe} no es una clave, sin embargo identificamos dos DFs: {ced_jefe}  {nom_jefe} y {ced_jefe}  {ape_jefe} cédula nombre apellido ced_jefe nom_jefe ape_jefe

Definiciones Atributos primos y no-primos Recordemos que una clave candidata es una superclave minimal. Son primos los atributos de cualquier clave candidata Son no-primos los atributos que no forman parte de ninguna clave candidata primo primo no-primo no-primo no-primo no-primo cédula credencial nombre apellido dirección teléfono

Agenda Primera forma normal Segunda forma normal Tercera forma normal Forma normal de Boyce-Codd Otras formas normales Introducción Definiciones Formas normales

Formas normales Primera forma normal Una relación está en primera forma normal (1NF) si los dominios de los atributos sólo incluyen valores atómicos. Algunos puristas, como Chris Date, tienen una definición más estricta de 1NF, que incluso prohíbe la existencia de NULLs. Por ejemplo, la siguiente relación no está en 1NF: cédula nombre apellido teléfonos 4.200.300-5 Juan Pérez 5551122, 5558935 3.181.348-6 María González 5551965 3.642.936-1 Martínez 5553521, 5552460, 5551035

Formas normales Primera forma normal La primera forma normal está asociada a la no existencia de “grupos repetidos”, pero hay diferentes escuelas sobre lo que significan “grupos repetidos”. Para algunos, esta sería otra forma de violar 1NF: cedula nombre apellido teléfono1 teléfono2 teléfono3 4.200.300-5 Juan Pérez 5551122 5558935 3.181.348-6 María González 5551965 3.642.936-1 Martínez 5553521 5552460 5551035

Formas normales Primera forma normal La forma de solucionar el problema es descomponer la relación en dos relaciones, con los “grupos repetidos” en su propia relación: PERSONAS TELEFONOS_PERSONA TELEFONOS_PERSONA(CEDULA) REFERENCES PERSONAS(CEDULA) cedula nombre apellido 4.200.300-5 Juan Pérez 3.181.348-6 María González 3.642.936-1 Martínez cedula teléfono 4.200.300-5 5551122 5558935 3.181.348-6 5551965 3.642.936-1 5553521 5552460 5551035

Formas normales Segunda forma normal Una relación R está en segunda forma normal (2NF) si está en 1NF y si todo atributo no-primo de R depende funcionalmente de manera total de la clave primaria. La siguiente relación está en 1NF pero no está en 2NF, porque nombre y apellido dependen sólo de cedula: La PK es {cedula, proyecto} {cedula}  {nombre, apellido} cedula proyecto nombre apellido horas 4.200.300-5 1 Juan Pérez 52 3.181.348-6 María González 20 2 32

Formas normales Segunda forma normal La forma de solucionar esto es separar los atributos que dependen de toda la PK de los que no PERSONAS DEDICACIONES DEDICACIONES(CEDULA) REFERENCES PERSONAS(CEDULA) cedula nombre apellido 4.200.300-5 Juan Pérez 3.181.348-6 María González cedula proyecto horas 4.200.300-5 1 52 3.181.348-6 20 2 32

Formas normales Tercera forma normal Una relación R está en tercera forma normal (3NF) si está en 2NF y si no existe ninguna dependencia funcional transitiva entre atributos que no son clave La siguiente relación está en 2NF, pero no está en 3NF porque región depende de país: La PK es {cedula} {cedula}  {país} y {país}  {región} cedula nombre apellido país región 4.200.300-5 Juan Pérez Uruguay Sudamérica 3.181.348-6 María González España Europa

Formas normales Tercera forma normal La forma de solucionar esto es separar en otra relación la DF que viola 3NF: {país}  {región} PERSONAS PAISES PERSONAS(PAÍS) REFERENCES PAISES(PAÍS) cedula nombre apellido país 4.200.300-5 Juan Pérez Uruguay 3.181.348-6 María González España país región Uruguay Sudamérica España Europa

Formas normales Forma normal de Boyce-Codd Una relación R está en forma normal de Boyce-Codd (BCNF) si está en 2NF y si para cada dependencia A  B, el determinante A es una clave candidata de R BCNF es muy parecida a 3NF, pero es un poco más estricta Este es un ejemplo de relación en 3NF, pero no en BCNF. Note que {país}  {tipo_doc} y {país} no es una clave de la relación. tipo_doc nro_doc nombre apellido país CI 4.200.119-2 Juan Pérez Uruguay DNI 10563145-8 María González Argentina

Formas normales Otras formas normales Existen otras formas normales que no veremos (4NF, 5NF) cada una más restrictiva que la anterior. Siempre intentaremos generar modelos lógicos en los que cada relación esté al menos en 3NF (si hicimos bien el MER y el pasaje MER  MR esto está asegurado). NF ¿Qué significa? 1NF No hay grupos repetidos 2NF No hay dependencias parciales 3NF No hay dependencias transitivas BCNF No hay DFs con determinantes no-claves