Teórico: Normalización

Slides:



Advertisements
Presentaciones similares
EL MODELO RELACIONAL Edgar Codd, 1970: Artículo → “A Relational Model of Data for Large Shared Data Banks”. Basado en teoría de conjuntos. Operaciones.
Advertisements

IBD Clase 13.
Normalizaciones de Bases de Datos
El modelo de datos relacional
Rocío Contreras Águila Primer Semestre 2010
Una dependencia funcional es una relación entre atributos de una misma relación (tabla). Si X e Y son atributos de la relación R, se dice que Y es funcionalmente.
PROPIEDADES DE LOS DETERMINANTES:
Teórico: Dependencias Funcionales
Teórico: Modelo Relacional
MATRIZ DE CHEQUEO DE PARIDAD
MODELO RELACIONAL.
INTELIGENCIA ARTIFICIAL
Estadística Computacional I
Maestría en Bioinformática Bases de Datos y Sistemas de Información Fundamentos de Normalización Ing. Alfonso Vicente, PMP
Teórico: Algebra Relacional
MODELOS LÓGICOS : Modelo Relacional
FORMA NORMAL DE BOYCE-CODD (BCNF)
Teoría de Bases de Datos
NORMALIZACIÓN DE DATOS
MODELO RELACIONAL.
4.2 Dominios atómicos y la primera forma normal.
FORMAS NORMALES El proceso de normalización de bases de datos consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo.
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.
Diseño de Bases de Datos Distribuidas (2da Parte)
NORMALIZACIÓN DE DATOS
Answering Queries Using Views (Levy, Mendelzon, Sagiv, Srivastava) Javier López C.
Diseño de Bases de Datos Distribuidas (1era Parte)
Normalización Preparó: Ismael Castañeda Fuentes
BASE DE DATOS I Clase # 1.
Métrica v2.1 Técnicas: Teoría de la Normalización.
Lenguajes Formales de Consulta
Diseño de Bases de Datos

EL MODELO RELACIONAL Edgar Codd, 1970: Artículo → “A Relational Model of Data for Large Shared Data Banks”. Basado en teoría de conjuntos. Operaciones.
NORMALIZACION La teoría de la normalización, cuyas tres primeras formas normales fueron introducidas por Codd desde sus primeros trabajos, elimina dependencias.
John Freddy Duitama Muñoz. Facultad de Ingeniería. U. de. A.
Métrica v2.1 Técnicas: Modelado de datos (Parte 2)
MODELADO DE DATOS (PARTE 2) Viviana Poblete L. Modelo de Datos I.
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.
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 relacionales
NORMALIZACIÓN. Por qué funciona la normalización Preservación de la información –Debe poder reconstruirse la relación original a partir de la descomposición.
DISEÑO DE BASES DE DATOS
Tema 5 Diseño de Bases de Datos Universidad de Murcia
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.
Normalización Base de Datos I.
Normalización Base de Datos I.
Para pasar a tablas todos los datos sin dejar nada y que las tablas tengan sentido por si solas se tiene que seguir unos pasos: 1.Toda entidad se transforma.
NORMALIZACIÓN Prof. Gabriel Matonte.
NORMALIZACION DE DATOS
Base de Datos.
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.
Base de Datos I – Ing. Mary Carlota Bernal J.
Creado por Edgar Codd, 1970: Artículo “A Relational Model of Data for Large Shared Data Banks”. EL MODELO RELACIONAL.
Modelo entidad-relación extendido EER L.I. José de Jesús Eduardo Barrientos Avalos.
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:

Teórico: Normalización Bases de datos 1 Teórico: Normalización

Formas Normales Normalización - Introducción Primera Forma Normal Segunda Forma Normal Tercera Forma Normal Forma Normal de Boyce-Codd Cuarta Forma Normal

Normalización Introducción En el proceso de normalización se somete un esquema relación (er) a una serie de pruebas para “certificar” si pertenece o no a una cierta forma normal. Puede considerarse como un proceso durante el cual los er insatisfactorios se descomponen repartiendo sus atributos entre ers más pequeños que poseen propiedades deseables. Las formas normales, sin considerar otros factores, no garantizan un buen diseño de BD. Props adicionales: » Join sin pérdida » Preservación de dependencias

Superclave y Clave Superclave Una superclave de R = {A1, …, An} es un conjunto de atributos S ⊆ R tal que no existen 2 tuplas t1 y t2 en ningún r tal que t1[S] = t2[S]. Clave Una clave K es una superclave que cumple que si se le quita alguno de sus atributos, deja de ser superclave.

Clave Candidata Clave candidata, clave primaria Si una relación tiene mas de una clave, cada una es una clave candidata. Una de ellas es arbitrariamente designada como clave primaria. El resto son secundarias.

Primera Forma Normal (1NF) Definición Los dominios de los atributos deben incluir solo valores atómicos (los atributos no pueden ser multivaluados ni compuestos)

Definiciones Atributo Primo Atributos redundantes a la izquierda de df Un atributo del esquema relación R es primo si es miembro de alguna clave de R. Atributos redundantes a la izquierda de df Dado F conjunto de dfs que se cumplen en R, decimos que la df X -> A ∈ F contiene atributos redundantes a la izquierda, si se cumple Y -> A ∈ F+, donde Y ⊂ X. Dependencia Parcial X -> Y es una df parcial si contiene al menos un atributo redundante a la izquierda.

Segunda Forma Normal (2NF) Definición Un er R está en 2NF si ningún atributo no primo A de R depende parcialmente de cualquier clave de R.

Ejemplo Empleado (empleado , habilidad , lugar_trabajo) F = {empleado,habilidad -> lugar_trabajo, empleado -> lugar_trabajo} Viola 2NF

Definiciones Dependencia Transitiva Una df X -> Y en un er R es una df transitiva si existe un conjunto de atributos Z que no sea un subconjunto de una clave de R, y se cumplen tanto X -> Z como Z -> Y.

Tercera Forma Normal (3NF) Definición Un er R está en 3NF si está en 2NF y ningún atributo no primo de R depende transitivamente de una clave de R. Un er R está en 3NF si, siempre que una df X -> A se cumple en R, o bien (a) X es una superclave de R, o (b) A es un atributo primo de R.

Ejemplo Campeonato (torneo, año, ganador,fec_nacganador) F = {torneo,año -> ganador,fec_nacganador ganador -> fec_nacganador} Viola 3NF

Forma Normal de Boyce-Codd (BCNF) Definición Un er R está en BCNF si, siempre que una df X ->A se cumple en R, entonces X es una superclave de R.

Ejemplo Sea R(nombre, telefono, aficion , direccion) F = {nombre -> direccion, nombre,telefono,aficion -> direccion} Viola BCNF

Algoritmos de diseño Descomposición de relaciones Preservación de dependencias Descomposición en 3NF preservando las dfs Join sin pérdida. Propiedad Test de join sin pérdida Descomposición en BCNF con JSP Descomposición en 3NF con JSP y pres de dfs Problemas con valores nulos

Descomposición de relaciones Esquema relación universal R R = (A1, A2, ..., An), que contiene todos los atributos de la BD Descomposición de R, D D = (R1, R2, ..., Rm), que se obtiene mediante los algoritmos que realizan la descomposición utilizando las dependencias funcionales Se debe verificar: Ui=1..m Ri = R

Preservación de dependencias Proyección de un conjunto de dependencias sobre un Esquema de Relación Dado un conjunto de dfs F sobre R, la proyección de F sobre Ri, πRi(F), donde Ri es un subconj. de R, es el conj. de dfs X -> Y en F+ tal que los atributos en X U Y estén todos contenidos en Ri.

Preservación de dependencias Una descomposición D = (R1, R2, ..., Rm) de R preserva las dependencias respecto a F si se cumple: ( (πR1(F)) U ... U (πRm(F)) )+ = F+

Descomposición en 3NF con pres de dfs Algoritmo Encontrar un cubrimiento minimal G para F; Para cada miembro izq. X de una df que aparezca en G crear un er {X U A1 U A2 ... UAm} en D, donde X -> A1, X -> A2, ... , X -> Am sean las únicas dfs en G con X como miembro izq.; Colocar cualquier atributos restantes en un solo er para asegurar la prop de preservación de dependencias;

Join sin Pérdida Definición Una descomposición D = (R1, R2, ..., Rm) de R tiene la propiedad de JSP respecto al conjunto de dfs F sobre R, si por cada instancia de relación r de R que satisfaga F, se cumple lo siguiente: (πR1(r), ..., πRm(r)) = r

Join sin Pérdida Propiedad D = (R1, R2) de R tiene JSP respecto a F sobre R sii la df (R1 ∩ R2) -> (R1 - R2) está en F+ ó la df (R1 ∩ R2) -> (R2 - R1) está en F+

Test de join sin pérdida Algoritmo crear una matriz S con una fila i por cada relación Ri en la desc D, y una columna j por cada atributo Aj en R; hacer S(i,j) := bij para todas las entradas de la matriz; para cada fila i que represente el er Ri para cada columna j que represente el atributo Aj si Ri incluye a Aj entonces hacer S(i,j) := aj; repetir hasta que una ejecución no modifique S para cada df X -> Y en F igualar los símbolos en los atributos de Y para aquellas filas que coinciden en los atributos de X; si una fila tiene todos símbolos “a”, la desc es con JSP, en caso contrario, no lo es;

Descomposición en BCNF con JSP Algoritmo hacer D := { R }; mientras haya un er Q en D que no esté en BCNF hacer comenzar escoger un er Q en D que no esté en BCNF; encontrar una df X->Y en Q que viole BCNF; reemplazar Q en D por dos esquemas (Q - Y) y (X U Y) fin;

Desc en 3NF con JSP y pres de dfs Algoritmo encontrar un cubrimiento minimal G para F; para cada miembro izq. X de una df que aparezca en G crear un er {X U A1 U A2 ... U A1m} en D, donde X->A1, X->A2, ... , X->Am sean las únicas dfs en G con X como miembro izq.; colocar cualesquier atributos restantes en un solo er; si ninguno de los er contiene una clave de R, crear un er adicional que contenga atributos que formen una clave de R;

Resumen Se presentaron las ideas básicas de la teoría de diseño relacional. Dependencia Funcional Forma Normal Descomposición Preservación de Dependencias Join Sin Pérdida Algoritmos de Normalización.

Resumen