NORMALIZACIÓN DE DATOS

Slides:



Advertisements
Presentaciones similares
el 1, el 4 y el 9 tres cuadrados perfectos autosuficientes
Advertisements

IBD Clase 13.
IBD Clase 14.
4. ANÁLISIS FACTORIAL Introducción Modelo factorial ortogonal
Álgebra 2010 Clase N° 1 Conjuntos numéricos I
Entidad Cosa u objeto real (una persona) o abstracto (un préstamo) de interés en el mundo real (una organización). Es distinguible de todos los demás objetos.
Rocío Contreras Águila Primer Semestre 2010
Introducción a LAS Bases de Datos
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.
Teórico: Normalización
Teórico: Dependencias Funcionales
UPC Tema: ESPACIO VECTORIAL Rn
Base de Datos Distribuidas Bases de Datos II Universidad Argentina J. F. Kennedy - Año 2008 Maletin Yahoo => briefcase.yahoo.com Usuario => bd2_jfk Pssw.
DESCRIPCION DE SISTEMAS
Diseño y Construcción de una
TEORÍA DE CONJUNTOS.
MODELO RELACIONAL.
INTELIGENCIA ARTIFICIAL
Ecuaciones y Resolución de Ecuaciones Lineales
Expresiones Racionales
Exponentes Racionales y Radicales
Estadística Computacional I
Taller matemático (Cálculo)
Fundamentos de Lógica Difusa (Fuzzy)
Comité Nacional de Información Bogotá, Julio 27 de 2011 Consejo Nacional de Operación de Gas Natural 1 ESTADISTICAS NACIONALES DE OFERTA Y DEMANDA DE GAS.
¿Qué es un conjunto? Un conjunto es una colección de objetos considerada como un todo. Los objetos de un conjunto son llamados elementos o miembros del.
MODELO RELACIONAL.
DETERMINANTES DE UNA MATRIZ
Teoría de Bases de Datos
Dependencias Funcionales
Base de Datos Relacional.
NORMALIZACIÓN DE DATOS
MODELO RELACIONAL.
Introducción y conceptos generales
Ingeniería Informática y de Sistemas
Sesión 14.3 Sistema Coordenado Tridimensional y Vectores en el espacio.
COMPUTACIÓN IV Alcalá Gaytán Erick Daniel Banda Salas Luis Rolando
Tema 8 : Sistemas relacionales Resumen Sobre el modelo relacional
Universidad Interamericana de P.R. Departamento Informática Curso 3850 Dr. Rafael Nieves.
Sistemas de Ecuaciones lineales
FUNDAMENTOS DE LA TEORÍA DE CONJUNTOS
Vectores en el plano. Producto escalar.
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.
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.
Métrica v2.1 Técnicas: Modelado de datos (Parte 2)
MODELADO DE DATOS (PARTE 2) Viviana Poblete L. Modelo de Datos I.
NORMALIZACION DE BASES DE DATOS
Normalización en una base de datos
SEGUNDA FORMA NORMAL Cod Alumno Universidad Nombre Apellido Años 10
Chapter 13 Normalization Transparencies © Pearson Education Limited 1995, 2005.
Diseño de una Base de Datos
Diseño de bases relacionales
DISEÑO DE BASES DE DATOS
Tema 5 Diseño de Bases de Datos Universidad de Murcia
CICLO DE VIDA Y NORMAALIZACION DE UN SISTEMA DE BASE DE DATOS
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.
Base de Datos.
Normalización de Base de Datos
Normalización Prof. Gloria Toro Oñate
Ingeniero Esp. Ricardo Cujar.
DISEÑO DE BASES DE DATOS (modelos para el diseño)
BASES DE DATOS CONCEPTOS BASICOS Elizabeth Maite Zarate Machaca “El tratamiento eficiente de la información al servicio del usuario”
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:

NORMALIZACIÓN DE DATOS

Diseño Relacional El diseño de una BD Relacional puede abordarse de dos formas distintas: Obteniendo el esquema relacional directamente: Objetos y reglas captadas del análisis del mundo real, representadas por un conjunto de esquemas de relación, sus atributos y restricciones de integridad. Realizando el diseño del esquema "conceptual" de la BD (modelo E/R) y transformándolo a esquema relacional.

Ejemplo de diseño inadecuado Redundancia de información: ciudad, distancia (ciudad); precio (artículo). Anomalías de modificación: !podemos tener el mismo artículo con dos precios! (igual argumento para ciudad y distancia).  inconsistencias Anomalías de inserción: ¿Podemos registrar nuevo artículo?, ¿Nuevo cliente?, ¿Nueva ciudad, distancia? Anomalías de borrado: Si eliminamos tupla de pedido de artículo A3 o cliente C4  pérdida de información.

Ejemplo de diseño inadecuado Redundancia de información: datos repetidos desperdicio de espacio, actualización complicada Mal diseño: anomalías, redundancia e inconsistencias de la información imposibilidad para representar cierta información pérdida de información Normalización conversión de una relación con ciertos problemas a dos o más relaciones que no tienen tales problemas

Principio básico de diseño: "hechos distintos se deben almacenar en objetos distintos"

Teoría de Normalización Técnica formal de análisis y organización de datos; trata de evitar la redundancia y anomalías de actualización. Introduce formalización en el diseño lógico de las Bases de Datos Relacionales. Además permite mecanizar parte del proceso al disponer de instrumentos algorítmicos de ayuda al diseño. Proceso de normalización: disminuye las anomalías de actualización, pero penaliza las consultas (combinación consume muchos recursos).

Formas normales 1ª FN (Codd, 1970) Un esquema de relación está en una determinada forma normal si satisface un determinado conjunto específico de restricciones definidas sobre los atributos del esquema (dependencias). 1ª FN (Codd, 1970) Concepto de relación normalizada. 2ª, 3ª FN (Codd, 1970), FNBC (Boyce/Codd, 1974) Basadas en análisis de dependencias funcionales. 4ª FN. Fagin, 1977 Basada en análisis de dependencias multivaluadas. 5ª FN. Fagin, 1979 Basada en análisis de dependencias de proyección / combinación.

Formas normales Relaciones en 2ªFN Relaciones en 3ªFN Relaciones en FNBC Relaciones en 4ªFN Relaciones en 5ªFN Relaciones normalizadas Relaciones

Dependencias Restricciones de integridad impuestas por el usuario. Propiedades inherentes al contenido semántico de los datos. Se han de cumplir para cualquier extensión del esquema de una relación. No se pueden demostrar, pero sí afirmar por observación del mini mundo a representar. Del análisis de la extensión de un esquema relacional sólo podremos deducir que no existe una determinada dependencia. Si una dependencia es cierta para un determinado esquema de relación, una extensión no será válida si no la cumple.

Dependencia funcional Sean A y B atributos de una misma tabla o relación R. Se dice que B es funcionalmente dependiente de A y se denota A B si todo posible valor de A tiene asociado un único valor de B,  o lo que es lo mismo, en todas las tuplas de r(R) en las que el atributo A toma el mismo valor “v1”, el atributo B toma también un mismo valor “v2”.

Dependencia funcional Definición Sean X e Y subconjuntos de A (A, conjunto de atributos de R).   Decimos que X determina o implica a Y en R (equivale a Y depende funcionalmente de X) si para dos tuplas cualesquiera de r(R) que tengan iguales valores en X, también son iguales los valores en Y. Se representa por X  Y

Diagrama de dependencias funcionales Ejemplo: R ( A, DF ). R: pedidos A: {artículo, cliente, cantidad, precio, ciudad, distancia}. DF: ({artículo,cliente}  {cantidad,precio,ciudad, distancia}, artículo  precio, cliente  {ciudad, distancia}, ciudad  distancia ) Diagrama de Dependencias Funcionales

Dependencia funcional plena o completa Sea X (conjunto de atributos). Se dice que Y tiene dependencia funcional plena o completa de X, si depende funcionalmente de X pero no depende de ningún subconjunto del mismo X Y sii  X'  X | X'  Y (X determina completamente "" a Y si y solo si no existe un subconjunto X' de X tal que ese subconjunto X' determine funcionalmente a Y) P.e. (artículo, cliente)  cantidad es una DF completa, pero (artículo, cliente)  precio no es una DF completa puesto que artículo  precio;

Dependencia funcional transitiva Si XY, Y-/X, YZ entonces Z depende transitivamente de X (X--Z) Por ejemplo: Cliente  ciudad, ciudad -/ cliente (no determina funcionalmente), y cliente  distancia,  por tanto, ciudad --- distancia (cliente determina “transitivamente” a distancia).

Normalización de un esquema de BD Relacional

Segunda Forma Normal (2ªFN). Un esquema de relación R(A,DF) está en 2ª FN si y sólo si está en 1ª FN (es decir, si la relación está normalizada) y sus atributos no primarios dependen completamente de la clave primaria de R. (atributos no primarios: que no formen parte de la clave primaria). Si una relación R no está en 2ª FN, se puede normalizar descomponiendo esa relación en: Una relación con los atributos de clave primaria, más los atributos con dependencia completa de ella. Una relación para cada "parte" de la clave primaria, más los atributos que dependan funcionalmente de esa parte.

Descomposición a 2ª FN (informal) Ejemplo: PEDIDOS se descompone en: PEDIDOS'({artículo,cliente, cantidad}, {[artículo,cliente]  cantidad}) ARTICULOS ({artículo, precio}, {artículo  precio} ) CLIENTES({cliente,ciudad,distancia}, {clienteciudad,ciudaddistancia})

Tercera Forma Normal (3ªFN) Un esquema de relación R(A,DF) está en 3ª FN si y sólo si está en 2ª FN y ninguno de sus atributos no primarios depende transitivamente de la clave primaria de R. Es decir no hay DF transitivas. Descomposición informal: Si una relación no está en 3ª FN, y tenemos los conjuntos de atributos X,Y,Z tales que XY, YZ (por tanto X --- Z ): Una relación formada por la clave primaria (X) más los atributos que dependen directamente de ella. Una relación para los atributos de Y y Z.

Descomposición a 3ª FN (informal) Ejemplo: CLIENTES se descompone en: CLIENTES' ({cliente, ciudad}, {cliente  ciudad}) CIUDADES ({ciudad, distancia}, {ciudad distancia})

Implicación lógica de DFs. Dado un esquema relacional R, una dependencia funcional df de R está implicada lógicamente por un conjunto de dependencias DF de R si cada ejemplar de la relación r(R) que satisface DF también satisface df. R({ABCGHI}, {AB, AC, CGH, CGI, BH} ¿ AH ? Si t1[A]=t2[A], AB  t1[B]=t2[B], BH  t1[H]=t2[H]  AH Cierre (clausura) de DF: Dado un conjunto de dependencias funcionales DF, llamaremos cierre de DF, y lo representaremos por DF+, al conjunto de todas las dependencias funcionales posibles que implicadas lógicamente en DF.

Reglas de inferencia de DFs Dado un conjunto DF de dependencias funcionales, podemos probar que se cumplen otras ciertas dependencias funcionales inferidas de DF. "Axiomas" de Armstrong: Sea R (A:D); X ,Y, Z, W subconjuntos de A. Se verifica: 1) Reflexividad. Si X, conjunto de atributos, Y  X, entonces se verifica que X  Y. 2) Aumentatividad. Si X  Y, Z conjunto de atributos, entonces se verifica que XZ  YZ. (XY es lo mismo que X  Y, unión) 3) Transitividad. Si X  Y e Y  Z, entonces se verifica que X  Z. Estas reglas forman un sistema completo de reglas de inferencia, porque dado DF permiten calcular DF+ Son correctas (seguras) puesto que no generan dependencias funcionales incorrectas.

Técnicas principales para el Diseño Relacional Diseño del esquema conceptual en un modelo de datos de alto nivel (como el ER) y su posterior transformación en un conjunto de relaciones. En esta técnica podemos aplicar informalmente los principios de normalización comentados (evitar dependencias parciales o transitivas), tanto durante la fase de diseño conceptual, como posteriormente al conjunto de relaciones obtenidas mediante el proceso de transformación.

Técnicas principales para el Diseño Relacional Considerar el diseño de la BD relacional estrictamente en términos de dependencias (funcionales y de otros tipos que veremos) entre los atributos de la BD. Este proceso es denominado algunas veces como síntesis relacional, puesto que los esquemas de relación son “sintetizados” mediante el adecuado agrupamiento de atributos. Cada esquema de relación representaría a un grupo de atributos lógicamente coherente y poseería las ventajas asociadas con la normalización (no redundancia, no anomalías, ...). Durante el proceso de normalización descompondremos un determinado esquema de relación que no esté en una determinada forma normal en múltiples esquemas de relación hasta un diseño final con relaciones en las que se hubiese alcanzado la forma normal deseada. Caso extremo (descomposición estricta): comenzamos sintetizando un único esquema de relación (relación universal), que incluye todos los atributos de la BD.

Objetivos de la normalización. Dado un conjunto A de atributos y el conjunto DF de dependencias existentes entre ellos, R(A, DF), se trata de transformar este esquema origen en un conjunto de n esquemas de relación {Ri (Ai, DFi)}, 1 i  n [esquemas resultantes], equivalentes y mejores que R: a) Conservación de la información. b) Conservación de dependencias. c) Mínima redundancia de los datos (mayor grado de normalización).

a. Conservación de la información: a.1. Conservación de atributos: el conjunto de atributos de los esquemas resultantes ha de ser igual al conjunto de atributos del esquema origen. a.2. Conservación del contenido (tuplas): para toda extensión r de R, la reunión natural (natural join, * ) de las relaciones resultantes tiene que producir la relación origen. (nota: * operador de reunión natural,  operador de proyección) i = 1 n Ri r * p ( ) Si la descomposición no cumple esta propiedad, e.d. no es una descomposición y reunión sin pérdidas (de información), cuando se aplica la operación de reunión natural a las relaciones resultantes, aparecen tuplas espúreas en la relación resultado

Descomposición y Reunión con pérdida   *

Tercera Forma Normal (3ª FN). Definiciones generales, atributo primo: atributo que forma parte de una clave candidata. Un esquema de relación R está en 2ª FN si está en 1ª FN y todo atributo no primo A de R depende funcionalmente de manera completa de toda clave candidata de R. Un esquema de relación R está en 3ª FN si está en 2ª FN y ningún atributo no primo depende transitivamente de alguna clave candidata de R.

Tercera Forma Normal (3ª FN). Redefinición de 3ª FN: Un esquema de relación R(A,DF) está en 3ª FN si  X  Y  DF+ se verifica alguna de las siguientes condiciones: X  Y trivial. X es superclave de R. X no es superclave y cada atributo A  (Y - X) está contenido en una clave candidata de R. Un diseño de BD está en 3ª FN si cada esquema de relación de la BD está en 3ª FN.  FNBC

Ejemplo: 3ª FN y FNBC E P C imparte (estudiante, curso, profesor) DF: (1) estudiante, curso  profesor; (2) profesor  curso K: { (estudiante, curso), (estudiante, profesor)} No en FNBC pues antecedentes de (2) no es superclave, pero si en 3ª FN pues los consecuentes son atributos primos. Descomposición a FNBC por profesor  curso: E P C