18
NORMALIZACION DE NORMALIZACION DE DATOS DATOS ANDREA CATALINA ANDREA CATALINA GALLEGO GONZALEZ GALLEGO GONZALEZ

NORMALIZACION DE DATOS

  • Upload
    darby

  • View
    33

  • Download
    0

Embed Size (px)

DESCRIPTION

NORMALIZACION DE DATOS. ANDREA CATALINA GALLEGO GONZALEZ. INTRODUCCIÒN. 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 entidad-relación al modelo relacional . - PowerPoint PPT Presentation

Citation preview

Page 1: NORMALIZACION DE  DATOS

NORMALIZACION DE NORMALIZACION DE DATOSDATOS

ANDREA CATALINA ANDREA CATALINA

GALLEGO GONZALEZGALLEGO GONZALEZ

Page 2: NORMALIZACION DE  DATOS

INTRODUCCIÒNINTRODUCCIÒN El proceso de El proceso de normalización de normalización de bases de datosbases de datos consiste consiste

en aplicar una serie de reglas a las relaciones obtenidas en aplicar una serie de reglas a las relaciones obtenidas tras el paso del tras el paso del modelo entidad-relaciónmodelo entidad-relación al modelo al modelo relacional.relacional.

Las bases de datos relacionales se normalizan para:Las bases de datos relacionales se normalizan para: Evitar la redundancia de los datos. Evitar la redundancia de los datos. Evitar problemas de actualización de los datos en las tablas. Evitar problemas de actualización de los datos en las tablas. Proteger la integridad de los datos. Proteger la integridad de los datos. En el modelo relacional es frecuente llamar En el modelo relacional es frecuente llamar tablatabla a una a una

relación, aunque para que una tabla sea considerada como relación, aunque para que una tabla sea considerada como una relación tiene que cumplir con algunas restricciones:una relación tiene que cumplir con algunas restricciones:

Cada columna debe tener su nombre único. Cada columna debe tener su nombre único. No puede haber dos filas iguales. No se permiten los No puede haber dos filas iguales. No se permiten los

duplicados. duplicados. Todos los datos en una columna deben ser del mismo tipo. Todos los datos en una columna deben ser del mismo tipo.

Page 3: NORMALIZACION DE  DATOS

CLAVESUna clave primaria es aquella columna (pueden ser

también dos columnas o más) que identifica únicamente a esa fila. La clave primaria es un

identificador que va a ser único para cada fila. Se acostumbra poner la clave primaria como la primera

columna de la tabla pero esto no tiene que ser necesario, si no es más una conveniencia. Muchas

veces la clave primaria es autonumérica

En una tabla puede que tengamos más de una clave, en tal caso se puede escoger una para ser la clave

primaria, las demás claves son las claves candidatas.además es la posible clave primaria.

Page 4: NORMALIZACION DE  DATOS

CLAVECLAVE Una Una clave foráneaclave foránea es aquella columna que existiendo es aquella columna que existiendo

como dependiente en una tabla, es a su vez clave como dependiente en una tabla, es a su vez clave primaria en otra tabla.primaria en otra tabla.

Una Una clave alternativaclave alternativa es aquella clave candidata que no es aquella clave candidata que no ha sido seleccionada como clave primaria, pero que ha sido seleccionada como clave primaria, pero que también puede identificar de forma única a una fila también puede identificar de forma única a una fila dentro de una tabla. Ejemplo: Si en un tabla clientes dentro de una tabla. Ejemplo: Si en un tabla clientes definimos el número de documento (id_cliente) como definimos el número de documento (id_cliente) como clave primaria, el número de seguro social de ese cliente clave primaria, el número de seguro social de ese cliente podría ser una clave alternativa. En este caso no se usó podría ser una clave alternativa. En este caso no se usó como clave primaria porque es posible que no se como clave primaria porque es posible que no se conozca ese datos en todos los clientes.conozca ese datos en todos los clientes.

Una Una clave compuestaclave compuesta es una clave que está es una clave que está compuesta por más de una columna.compuesta por más de una columna.

Page 5: NORMALIZACION DE  DATOS
Page 6: NORMALIZACION DE  DATOS

Normalización de datosNormalización de datos A través del siguiente ejercicio se intenta afirmar los conocimientos A través del siguiente ejercicio se intenta afirmar los conocimientos

de normalización con un ejemplo simplificado de una base de datos de normalización con un ejemplo simplificado de una base de datos para una pequeña biblioteca.para una pequeña biblioteca.

CodLibro

Titulo Autor Editorial NombreLector

FechaDev

1001Variable compleja

Murray Spiegel

McGraw Hill

Pérez Gómez, Juan

15/04/2005

1004 Visual Basic 5E. Petroustsos

AnayaRíos Terán, Ana

17/04/2005

1005 EstadísticaMurray Spiegel

McGraw Hill

Roca, René16/04/2005

1006Oracle University

Nancy Greenberg y Priya Nathan

Oracle Corp.

García Roque, Luis

20/04/2005

1007 Clipper 5.01 RamalhoMcGraw Hill

Pérez Gómez, Juan

18/04/2005

Page 7: NORMALIZACION DE  DATOS

Normalización de datosNormalización de datos

Esta tabla no cumple el requisito de la Esta tabla no cumple el requisito de la Primera Forma Normal (1NF) de sólo Primera Forma Normal (1NF) de sólo tener campos atómicos, pues el tener campos atómicos, pues el nombre del lector es un campo que nombre del lector es un campo que puede (y conviene) descomponerse en puede (y conviene) descomponerse en apellido paterno, apellido materno y apellido paterno, apellido materno y nombres. Tal como se muestra en la nombres. Tal como se muestra en la siguiente tabla.siguiente tabla.

Page 8: NORMALIZACION DE  DATOS

Normalización de datosNormalización de datosCodLibro Titulo Autor Editorial Paterno Materno Nombres FechaDev

1001 Variable compleja Murray Spiegel McGraw Hill Pérez Gómez Juan 15/04/2005

1004 Visual Basic 5 E. Petroustsos Anaya Ríos Terán Ana 17/04/2005

1005 Estadística Murray Spiegel McGraw Hill Roca René 16/04/2005

1006 Oracle University Nancy Greenberg Oracle Corp. García Roque Luis 20/04/2005

1006 Oracle University Priya Nathan Oracle Corp. García Roque Luis 20/04/2005

1007 Clipper 5.01 Ramalho McGraw Hill Pérez Gómez Juan 18/04/2005

Page 9: NORMALIZACION DE  DATOS

Como se puede ver, hay cierta redundancia Como se puede ver, hay cierta redundancia característica de 1NF. característica de 1NF.

La Segunda Forma Normal (2NF) pide que no La Segunda Forma Normal (2NF) pide que no existan dependencias parciales o dicho de otra existan dependencias parciales o dicho de otra manera, todos los atributos no clave deben manera, todos los atributos no clave deben depender por completo de la clave primaria. depender por completo de la clave primaria. Actualmente en nuestra tabla tenemos varias Actualmente en nuestra tabla tenemos varias dependencias parciales si consideramos como dependencias parciales si consideramos como atributo clave el código del libro.atributo clave el código del libro.

Por ejemplo, el título es completamente Por ejemplo, el título es completamente identificado por el código del libro, pero el identificado por el código del libro, pero el nombre del lector en realidad no tiene nombre del lector en realidad no tiene dependencia de este código, por tanto estos dependencia de este código, por tanto estos datos deben ser trasladados a otradatos deben ser trasladados a otra tabla. tabla.

Page 10: NORMALIZACION DE  DATOS

Normalización de datosNormalización de datos

CodLibro Titulo Autor Editorial

1001 Variable compleja Murray Spiegel McGraw Hill

1004 Visual Basic 5 E. Petroustsos Anaya

1005 Estadística Murray Spiegel McGraw Hill

1006 Oracle University Nancy Greenberg Oracle Corp.

1006 Oracle University Priya Nathan Oracle Corp.

1007 Clipper 5.01 Ramalho McGraw Hill

Page 11: NORMALIZACION DE  DATOS

Normalización de datosNormalización de datos

CodLector Paterno Materno Nombres

501 Pérez Gómez Juan

502 Ríos Terán Ana

503 Roca René

504 García Roque Luis

La nueva tabla sólo contendrá datos del lector.

Page 12: NORMALIZACION DE  DATOS

Normalización de datosNormalización de datos

Hemos creado una tabla para contener los datos del lector y también tuvimos que crear la columna CodLector para identificar unívocamente a cada uno. Sin embargo, esta nueva disposición de la base de datos necesita que exista otra tabla para mantener la información de qué libros están prestados a qué lectores. Esta tabla se muestra a continuación:

Page 13: NORMALIZACION DE  DATOS

CodLibro CodLector FechaDev

1001 501 15/04/2005

1004 502 17/04/2005

1005 503 16/04/2005

1006 504 20/04/2005

1007 501 18/04/2005

Page 14: NORMALIZACION DE  DATOS

Para la Tercera Forma Normal (3NF) la relación Para la Tercera Forma Normal (3NF) la relación debe estar en 2NF y además los atributos no debe estar en 2NF y además los atributos no clave deben ser mutuamente independientes y clave deben ser mutuamente independientes y dependientes por completo de la clave primaria. dependientes por completo de la clave primaria. También recordemos que dijimos que esto También recordemos que dijimos que esto significa que las columnas en la tabla deben significa que las columnas en la tabla deben contener solamente información sobre la entidad contener solamente información sobre la entidad definida por la clave primaria y, por tanto, las definida por la clave primaria y, por tanto, las columnas en la tabla deben contener datos columnas en la tabla deben contener datos acerca de una sola cosa.acerca de una sola cosa.

En nuestro ejemplo en 2NF, la primera tabla En nuestro ejemplo en 2NF, la primera tabla conserva información acerca del libro, los autores conserva información acerca del libro, los autores y editoriales, por lo que debemos crear nuevas y editoriales, por lo que debemos crear nuevas tablas para satisfacer los requisitos de 3NF.tablas para satisfacer los requisitos de 3NF.

Page 15: NORMALIZACION DE  DATOS

CodLibro Titulo

1001

Variable compleja

1004

Visual Basic 5

1005

Estadística

1006

Oracle University

1007

Clipper 5.01

Page 16: NORMALIZACION DE  DATOS

CodAutor Autor

801 Murray Spiegel

802 E. Petroustsos

803 Nancy Greenberg

804 Priya Nathan

806 Ramalho

CodEditorial Editorial

901

McGraw Hill

902

Anaya

903

Oracle Corp.

Page 17: NORMALIZACION DE  DATOS

Aunque hemos creado nuevas tablas para que Aunque hemos creado nuevas tablas para que cada una tenga sólo información acerca de una cada una tenga sólo información acerca de una entidad, también hemos perdido la información entidad, también hemos perdido la información acerca de qué autor ha escrito qué libro y las acerca de qué autor ha escrito qué libro y las editoriales correspondientes, por lo que editoriales correspondientes, por lo que debemos crear otras tablas que relacionen cada debemos crear otras tablas que relacionen cada libro con sus autores y editoriales libro con sus autores y editoriales

Page 18: NORMALIZACION DE  DATOS

VENTAJASVENTAJAS Integridad de datos (porque no hay datos Integridad de datos (porque no hay datos

redundantes ni omitidos). redundantes ni omitidos). Consultas optimizadas (porque las tablas Consultas optimizadas (porque las tablas

normalizadas generan combinaciones eficaces y normalizadas generan combinaciones eficaces y rápidas). rápidas).

Creación y ordenación de índices más rápidas Creación y ordenación de índices más rápidas (porque las tablas tienen menos columnas). (porque las tablas tienen menos columnas).

Ejecución más rápida de la instrucción UPDATE Ejecución más rápida de la instrucción UPDATE (porque hay menos índices por tabla). (porque hay menos índices por tabla).

Resolución de concurrencias mejorada (porque Resolución de concurrencias mejorada (porque los bloqueos de tabla afectarán a menos datos). los bloqueos de tabla afectarán a menos datos).