Normalización
description
Transcript of Normalización
Normalización
Base de Datos I
2
Normalización
• 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 eliminar redundancias e inconsistencias en una base de datos.
3
Normalización
1FN
2FN
3FN
BCNF
4FN
5FN
4
Normalización
1FN
5
Normalización
• Formas Normales:
Una tabla está en Primera Forma Normal (1FN) si sus atributos contienen valores atómicos.
6
Normalización
• Formas Normales:
Una tabla está en Primera Forma Normal (1FN) si sus atributos contienen valores atómicos.
“Una relación en la que la intersección de toda fila y columna contiene un valor y solo un valor”
7
Normalización
• Ejemplo
#
8
Normalización
• Primera Forma Normal (1FN):
##
#
9
Normalización
• Primera Forma Normal (1FN):
# #
10
Normalización
• Ejercicio: Aplique la primera forma normal a la siguiente tabla:
1. Persona (#CURP, nombre, edad, fecha de nacimiento, teléfonos)
2. Cliente (#Num_cliente,direcciones_de_envio, saldo, límite de crédito)
11
Dependencia funcional de datos
Es decir, cuando dos o más filas tienen el mismo valor de A, tienen también el mismo valor de B.
Dependencias funcionales
A B
Dependencia funcional de datosDescribe una relación entre atributos de una
tabla.“Si A y B son atributos de una tabla, B será
funcionalmente dependiente de A. Si cada valor de A está asociado con exactamente un valor de B”
determinante dependiente
11B depende funcionalmente de A
12
Dependencia funcional de datosEjemplo:
Dependencias funcionales
12
No. Trabajador Nombre Tipo de
empleado Salario Sucursal
SL21 Juan Director 24000 B005
SG37 Ana Asistente 9000 B003
SG14 David Supervisor 18000 B003
SA9 María Asistente 9000 B007
SG5 Susana Director 24000 B003
SL41 Julia Asistente 9000 B005
TRABAJADORES
13
Dependencia funcional de datosEjercicio:
Dependencias funcionales
13
Clave libro
Nombre libro Autor Editorial Año
1022 Sistemas de bases de datos Thomas M. Addison Wesley 2006
1022 Sistemas de bases de datos
Carolyn E. Addison Wesley 2006
2893 Fundamentos de Bases de datos Silberschatz. Mc Graw Hill 2010
2893 Fundamentos de Bases de datos Korth. Mc Graw Hill 2010
2893 Fundamentos de Bases de datos Sudarshan. Mc Graw Hill 2010
LIBROS
14
Dependencia funcional completa
Indica que si A y B son atributos de una tabla, B depende funcionalmente de A pero no de ningún subconjunto de A.
Dependencias funcionales
14
15
Dependencia funcional completaEjemplo 1
Dependencias funcionales
15
Matrícula Código curso Nombre Apellido Calificación
1256 34 Pedro Valiente 9
1256 25 Pedro Valiente 8
5776 34 Ana Fernández 6
3491 25 Sara González 7
3491 34 Sara González 6
Dependencia funcional transitiva
Se produce cuando tenemos tres conjuntos de atributos X, Y y Z.
Y depende funcionalmente de X (X→Y),
Z depende funcionalmente de Y (Y→Z).
Además X no depende funcionalmente de Y.
Entonces ocurre que X produce una dependencia funcional transitiva sobre Z.
Esto se denota como:
(X → Z)
Dependencias funcionales
17
Normalización
1FN
2FN
18
Normalización
Segunda Forma Normal (2FN)
Ocurre si una tabla está en primera forma normal y además cada atributo que no sea clave, depende de forma funcional completa respecto de cualquiera de las claves.
19
Normalización
Segunda Forma Normal (2FN)Ejemplo:
Matrícula Código curso Nombre Apellido Calificación
1256 34 Pedro Valiente 9
1256 25 Pedro Valiente 8
5776 34 Ana Fernández 6
3491 25 Sara González 7
3491 34 Sara González 6
20
Normalización
Segunda Forma Normal (2FN)Solución:
Matrícula Nombre Apellido
1256 Pedro Valiente
5776 Ana Fernández
3491 Sara González
Matrícula Código curso Calificación
1256 34 9
1256 25 8
5776 34 6
3491 25 7
3491 34 6
21
Normalización
Segunda Forma Normal (2FN)Ejercicio:
No. vendedor
Nombre vendedor
Numero cliente
NombreCliente Valor de venta
1022 Mariana 1840 Melisa 13540
1022 Mariana 1834 Álvaro 10600
1022 Mariana 1856 Victoria 9700
2893 Salvador 1865 Francisco 68400
2893 Salvador 1890 Enrique 34600
2785 Adrian 1864 25000 25000
2785 Adrian 1823 Alma 35008
22
Normalización
1FN
3FN
23
Normalización
Tercera Forma Normal (3FN)
Ocurre cuando una tabla está en 2FN y además ningún atributo que no sea clave depende transitivamente de las claves de la tabla. Es decir no ocurre cuando algún atributo depende funcionalmente de atributos que no son clave.
24
Normalización
Tercera Forma Normal (3FN)
DNI Nombre Apellido Cod. Provincia Provincia
12121349A Salvador Velasco 34 Palencia
12121349B Pedro Valiente 34 Palencia
3457775G Ana Fernández 47 Valladolid
5674378J Sara Crespo 47 Valladolid
3456858S Marina Serrat 08 Barcelona
Alumnos
25
Normalización
Tercera Forma Normal (3FN)Solución:
Alumnos(#DNI, Nombre, Apellido1, Cod_Provincia)
Provincia(#Cod_Provincia, Provincia)
26
Normalización
Tercera Forma Normal (3FN)
Solución:
DNI Ciudad País Edad
1 Oaxaca México 34
2 Oaxaca México 25
3 Puebla México 19
4 Miami EU 22
5 Miami EU 30
SOCIO
El campo no principal País depende transitivamente de la clave DNI (a través del campo Ciudad).
27
Normalización
Ejercicio 1: Normalizar hasta 3FN
_______ _______
28
Normalización
Ejercicio 2: Normalizar hasta 3FN
_______ ___________
29
Normalización
Ejercicio 3: Normalizar hasta 3FN
__________ __________
30
Normalización
1FN
3FN
BCNF
31
Normalización
Forma normal de Boyce-Codd (FNBC)
Una relación está en Formal Normal de Boyce-Codd (BCNF) si y sólo si cada determinante (en la relación) es una clave candidata.
32
Normalización
Una forma sencilla de comprobar si una relación se encuentra en FNBC consiste en comprobar, además de que esté en 3FN, lo siguiente:
1. Si no existen claves candidatas compuestas (con varios atributos), está en FNBC.
2. Si existen varias claves candidatas compuestas y éstas tienen un elemento común, no está en FNBC.
33
Normalización
Forma normal de Boyce-Codd (FNBC)
Ejemplo:
DNI Asignatura Tutor
1 Lenguaje Eva
1 Matemáticas Andrés
3 Lenguaje Eva
2 Matemáticas Guillermo
2 Lenguaje Julia
4 Matemáticas Guillermo
TUTORIAS
34
Normalización
Forma normal de Boyce-Codd (FNBC)
Solución:
Tutorías(#DNI,#Tutor)
AsignaturasTutor(#Tutor, Asignatura)
35
Normalización
Dependencia multivaluada
Una dependencia multivaluada representa una dependencia entre atributos( por ejemplo A, B y C) en una relación de modo que para cada valor de A hay un conjunto de valores de B y un conjunto de valores de C; sin embargo, los conjuntos de valores de B y C son independientes entre si.
36
Normalización
Dependencia multivaluada
A - >> B A B CA1 B1 C1A1 B2 C1A1 B1 C2A1 B2 C2
37
Normalización
Dependencia multivaluada
38
Normalización
Dependencia multivaluada No Curso Profesor Material
17 Eva 1
17 Eva 2
17 Julia 1
17 Julia 2
25 Eva 1
25 Eva 2
25 Eva 3
Los materiales del curso dependen del curso y no del profesor en una dependencia multivaluada (no hay dependencia funcional ya que los posibles valores son varios). Para el par Nº de curso y profesor podemos saber los materiales; pero lo sabemos por el curso y no por el profesor.
39
Normalización
1FN
BCNF
4FN
40
Normalización
Cuarta Forma Normal(4FN)
Una relación que ésta en forma normal de Boyce-Codd y no contiene dependencias multivaluadas no triviales.
Una dependencia multivaluada A->>B o A->->B es trivial si B es un subconjunto de A o si A U B =R
41
Normalización
Cuarta Forma Normal(4FN)
Ejemplo 1:
No Curso Profesor Material
17 Eva 1
17 Eva 2
17 Julia 1
17 Julia 2
25 Eva 1
25 Eva 2
25 Eva 3
42
Normalización
Cuarta Forma Normal(4FN)
Ejemplo 1:
No Curso Profesor
17 Eva
17 Julia
25 Eva
No Curso Material
17 1
17 2
25 1
25 2
25 3
43
Normalización
Cuarta Forma Normal(4FN)
Ejemplo 2:Transporte
Conductor Tipo Vehículo Tipo Carga
Juan Camioneta Perecederos
Marcos Camioneta Perecederos
Juan Camioneta Muebles
Marcos Camioneta Muebles
Juan Camión Mudanza
Marcos Camión Mudanza
En este caso hay dependencias funcionales multivaluadas, ya que algunos atributos que forman la clave dependen de otro atributo que también la forman.
44
Normalización
Cuarta Forma Normal(4FN)
Ejemplo 2:
Tabla en cuarta forma normal
Tipo Vehículo Tipo Carga
Camioneta Perecederos
Camioneta Muebles
Camión Mudanza
Tabla en cuarta forma normal
Conductor Tipo Vehículo
Juan Camioneta
Marcos Camioneta
Juan Camión
Marcos Camión
45
Normalización
Cuarta Forma Normal(4FN)
Ejercicio 1:
46
Normalización
1FN
BCNF
4FN
5FN
47
Normalización
Quinta Forma Normal(5FN)
Ocurre cuando está en 4FN y además no hay proyecciones que combinadas formen la tabla original. Es la más compleja y polémica de todas. Polémica pues no está claro en muchas ocasiones que sea una solución mejor sacar las proyecciones de la tabla. Fue definida también Fagin.
GRACIAS