Introducción a las Bases de Datos Unidad V

Anuncio

















5 Diseño de base de datos relacionales
5.1 Objetivos del diseño de bases de datos.
5.2 Dependencias funcionales.
5.3 Normalización.
5.3.1 Primera forma normal.
5.3.2 Segunda forma normal.
5.3.2.1 Dependencia funcional de los datos.
5.3.2.2 Dependencia funcional completa.
5.3.2.3 Dependencia transitiva.
5.3.3 Tercera forma normal.
5.3.3 Tercera forma normal.
5.3.3.2 Atributos multivaluados.
5.3.3.3 Dependencias multivaluadas.
5.3.4 Cuarta forma normal.
5.3.5 Quinta forma normal.
5.4 Enfoques alternativos al diseño de bases de datos.
5.5 Modelado semántico.

El
objetivo
principal
es
crear
una
REPRESENTACION PRECISA de los DATOS , de
las RELACIONES entre los datos y de las
RESTRICCIONES aplicables a los datos que sean
pertinentes para la organización.

Para conseguir este objetivo empleamos
técnicas como el Modelo Entidad – Relación.

Otra técnica de diseño de base de datos se
denomina Normalización.


Concepto asociado con la Normalización,
describe la relación entre atributos.
Dependencia funcional
◦ Describe la relación existente entre atributos de
una relación R, B será funcionalmente dependiente
de A (lo que se denota A→ B) si cada valor de A esta
asociado con exactamente un valor de B (A y B
puede consistir cada uno de ellos de uno o más
atributos.

Determinante: Hace referencia al atributo o grupo de
atributos en el lado izquierdo de la flecha que
describe una dependencia funcional.
A determina funcionalmente a B
B depende funcionalmente de A
A

B
Cuando existe una dependencia funcional, el
atributo o grupo de atributos en el lado
izquierdo de la flecha se denomina
determinante.



Dependencia funcional completa: Indica que si A
y B son atributos de una relación, B depende
funcionalmente de manera completa de A si B
depende funcionalmente de A pero no de ningún
subconjunto propio de A.
Una dependencia funcional A→ B es una
dependencia funcional completa si la eliminación
de cualquier atributo de A hace que la
dependencia deje de existir.
Una dependencia funcional A → B es una
dependencia parcial si existe algún atributo que
puede eliminarse de A y la dependencia continua
verificándose.


Dependencia transitiva: Una condición en la
que A→ B y B → C, entonces C depende
transitivamente de A, a través de B (supuesto
que A no sea funcionalmente dependiente de
B o C).
Considere:
noPersonal → sNombre, puesto, salario, noSucursal.
bDireccion
noSucursal→ bDireccion


Es una técnica para producir un conjunto de
relaciones con una serie de propiedades
deseables, partiendo de los requisitos de datos
de una organización.
Incluye:
◦ El número mínimo de atributos necesarios para soportar
los requisitos de datos de la organización.
◦ Los atributos con una relación lógica fuerte (conocida
como dependencia funcional) se encuentran en la misma
relación.
◦ Redundancia mínima, estando cada atributo
representado una sola vez, con la excepción de los
atributos que formen parte de las claves externas.

Si se consigue agrupar los atributos en
relaciones de modo que minimice la
redundancia de los datos, se obtienen las
siguientes ventajas:
◦ Las actualizaciones de los datos almacenados en la
BD pueden llevarse a cabo con un número mínimo
de operaciones, reduciendo incoherencia en los
datos.
◦ Reduce espacio de almacenamiento de archivos
requerido por las relaciones base, minimiza costos.



Un dominio es atómico si se considera indivisible.
Se dice que el esquema de una relación R está en la
PRIMERA FORMA NORMAL (1FN) si los dominios de
todos los atributos de R son atómicos.
Un conjunto de nombres es un ejemplo de valores no
atómicos. Por ejemplo, si el esquema de la relación
empleado incluyera el atributo hijos, los elementos
de cuyo dominio son conjuntos de nombres, el
esquema no se hallaría en la primera forma

Los atributos compuestos, como el atributo
dirección con sus atributos componentes calle y
ciudad , tienen también dominios no atómicos.
◦ Considérese una organización que asigna a los
empleados números de identificación así: dos primeras
letras especifican el departamento y las cuatro cifras
restantes son un número único para el empleado dentro
de ese departamento.
 Ejemplos de estos números pueden ser IN0012 y EE1127.
◦ Estos números de identificación pueden dividirse en
unidades menores y, por tanto, no son atómicos.


Forma NO Normalizada (UFN). Tabla que
contiene uno o más grupos repetitivos.
Primera Forma Normal (1FN) Una relación Una
relación en la que la inserción de toda fila y
columna contiene un valor y sólo un valor
(valores atómicos)

Para transformar de UFN a 1FN tenemos que
identificar y eliminar los grupos repetitivos
dentro de la tabla.
◦ Un atributo repetitivo es aquel, dentro de una tabla que
presente múltiples valores para un mismo valor de los
atributos designados como clave principal de esa tabla.

Hay dos
repetitivos:
técnicas
para
eliminar
grupos
◦ Introduciendo datos apropiados en las columnas vacías
de las filas que contienen los datos repetitivos.
◦ Colocando los datos repetitivos, junto con una copia de
los atributos originales en una relación independiente.
nocliente
cnombre
nopropiedad
pdireccion
Iniciorenta
finrenta
renta
Nopropietario
Onombre
CR76
John
Kay
PG4
6 Lawrence St
Glasgow
1-Jul-03
31-Ago04
350
CO40
Tina
Murphy
PG16
5 Novar Dr.
Glasgow
1-Sep-04
1-Sep-05
450
CO93
Tony
Shaw
PG4
6 Lawrence St
Glasgow
1-Sep-02
10-Jun03
350
CO40
Tina
Murphy
PG36
2 Manor Rd.
Glasgow
10-Oct03
1-Dic-04
375
CO93
Tony
Shaw
PG16
5 Novar Dr.
Glasgow
1-Nov-05
10-Ago-
450
CO93
Tony
Shaw
CR56
Aline
Stewa
rt
06
Tabla NO normalizada ClienteRenta
1FN
Nocliente
Cnombre
nopropiedad
pdireccion
Iniciorenta
Finrenta
Renta
Nopropietario
Onombre
CR76
John
Kay
PG4
6 Lawrence
St
Glasgow
1-Jul-03
31-Ago04
350
CO40
Tina
Murphy
John
Kay
PG16
5 Novar Dr.
Glasgow
1-Sep-04
1-Sep-05
450
CO93
Tony
Shaw
CR56
Aline
Stewa
rt
PG4
6 Lawrence
St
Glasgow
1-Sep-02
10-Jun03
350
CO40
Tina
Murphy
CR56
Aline
Stewa
rt
PG36
2 Manor Rd.
Glasgow
10-Oct03
1-Dic-04
375
CO93
Tony
Shaw
CR56
Aline
Stewa
rt
PG16
5 Novar Dr.
Glasgow
1-Nov-05
10-Ago-
450
CO93
Tony
Shaw
CR76
06
Tabla normalizada ClienteRenta
noCliente
cNombre
CR76
Jonh Kay
CR56
Aline Stewart
Nocliente
Cnombre
nopropiedad
pdireccion
Iniciorenta
Finrenta
Renta
Nopropietario
Onombre
CR76
John
Kay
PG4
6 Lawrence
St
Glasgow
1-Jul-03
31-Ago04
350
CO40
Tina
Murphy
John
Kay
PG16
5 Novar Dr.
Glasgow
1-Sep-04
1-Sep-05
450
CO93
Tony
Shaw
CR56
Aline
Stewa
rt
PG4
6 Lawrence
St
Glasgow
1-Sep-02
10-Jun03
350
CO40
Tina
Murphy
CR56
Aline
Stewa
rt
PG36
2 Manor Rd.
Glasgow
10-Oct03
1-Dic-04
375
CO93
Tony
Shaw
CR56
Aline
Stewa
rt
PG16
5 Novar Dr.
Glasgow
1-Nov-05
10-Ago-
450
CO93
Tony
Shaw
CR76
06



5.3.2.1 Dependencia funcional de los datos.
5.3.2.2 Dependencia funcional completa.
5.3.2.3 Dependencia transitiva.



La segunda forma normal (2FN) se basa en el
concepto de dependencia funcional completa.
Se aplica a las relaciones con claves
compuestas.
2FN: Una relación que esta en primera forma
normal y en la que todo atributo que no sea
clave principal depende funcionalmente de
manera completa de la clave principal.
noPropiedad
pDireccion
renta
Nopropietario
onombre
PG4
6 lawrence St Glasgow
350
CO40
Tina Murphy
PG16
5 Novar Dr. Glasgow
450
CO93
Tony Shaw
PG36
2 Manor Rd. Glasgow
375
CO93
Tony Shaw
PropietariosPropiedades
noCliente
noPropiedad
inicioRenta
finRenta
CR76
PG4
1-jul-03
31-ago04
CR76
PG16
1-sep-04
1-sep-05
CR56
PG4
1-sep-02
10-jun-03
CR56
PG36
10-oct-03
1-dic-04
CR56
PG16
1-nov-05
10-ago-06
Renta
noCliente
cNombre
CR76
Jonh Kay
CR56
Aline Stewart
Clientes



Una dependencia funcional es un tipo de
restricción que constituye una generalización
del concepto de clave.
Las
dependencias
funcionales
son
restricciones del conjunto de relaciones
legales. Permiten expresar hechos sobre la
empresa que se modela con la base de datos.
Se dice que K es una superclave de R si K→R


Las dependencias funcionales nos permiten
expresar las restricciones que no se pueden
expresar con las superclaves.
Las dependencias funcionales se utilizarán de
dos maneras:
◦ Para probar las relaciones y ver si son legales según un
conjunto dado de dependencias funcionales. Si una
relación r es legal según el conjunto F de dependencias
funcionales, se dice que r satisface F
◦ Para especificar las restricciones del conjunto de
relaciones legales. Así, solo habrá que preocuparse por
las relaciones que satisfacen un conjunto dado de
dependencias funcionales. Si uno desea restringirse a las
relaciones del esquema R que satisfagan el conjunto F
de dependencias funcionales, se dice que F se cumple en
R

Una relación que esta en primera y segunda
formas normales y en la que ningún atributo
que no sea de clave principal depende
transitivamente de la clave principal.
noPropietar
oNombre
CO40
Tina Murphy
CO93
Tony Shaw
Propietarios
Relaciones en tercera forma
normal derivadas de la relación
PropiedadesPropietarios
noPropiedad
pDireccion
renta
noPropietario
PG4
6 lawrence St Glasgow
350
CO40
PG16
5 Novar Dr. Glasgow
450
CO93
PG36
2 Manor Rd. Glasgow
375
CO93
Propiedades
noPropietar
oNombre
CO40
Tina Murphy
CO93
Tony Shaw
Relaciones en tercera forma
normal derivadas de la relación
PropiedadesPropietarios
Propietarios
noPropiedad
pDireccion
renta
noPropietario
PG4
6 lawrence St Glasgow
350
CO40
PG16
5 Novar Dr. Glasgow
450
CO93
PG36
2 Manor Rd. Glasgow
375
CO93
Propiedades


Una de las formas normales mas deseables que se
pueden obtener es la forma normal de Boyce-Codd
(FNBC ).
Un esquema de relación R está en FNBC respecto a un
conjunto de dependencias funcionales F si, para
todas las dependencias funcionales de F+ de la forma
α → β, donde α⊆ R y β ⊆ R, se cumple al R, se
cumple al menos una de las siguientes condiciones:
◦ α → β es una dependencia funcional trivial (es decir, β⊆ α).
◦ α es una superclave del esquema R.

Un diseño de base de datos está en FNBC si cada
miembro del conjunto de esquemas de relación que
constituye el diseño está en FNBC.


Una relación esta en FNBC, si y sólo si todo
determinante es una clave candidata.
Esquema-cliente =( nomCliente, calleCliente,
ciudadCliente)
◦ nomCliente → calleCliente ciudadCliente

Esquema-sucursal =( NomSucursal, activo,
ciudadSucursal)
◦ nomSucursal→ activo ciudadSucursal

Esquema-info-préstamo =(nomSucursal,
nomCliente, noPrestamo, importe)
◦ noPrestamo→ importe nomSucursal




Puede afirmarse que Esquema-cliente está en
FNBC. Obsérvese que una clave está en FNBC.
Obsérvese que una clave nomCliente.
Las únicas dependencias funcionales no triviales
que se cumplen en Esquema- cliente tienen
anombre-cliente a la izquierda de la flecha.
Dado que nombre-cliente es una clave candidata,
las dependencias funcionales con nomCliente en
la parte izquierda no violan la definición de
FNBC.
Lo mismo sucede conEsquema –sucursal.

El
esquema
Esquema-info-préstamo
,
sin
embargo,no
está
en
FNBC.
Obsérvese
que
noPrestamo no es una superclave de Esquemainfopréstamo, ya que puede que haya un par de
tuplas que representen a un solo préstamo concedido
a dos personas, por ejemplo,
◦ (Centro, Sr. Pinilla, P-44, 1.000)
◦ (Centro, Sra. Pinilla, P-44, 1.000)

Como no se ha relacionado ninguna dependencia
funcional que descarte el caso anterior,noPrestamo
no es una clave candidata.
Sin embargo, la dependencia funcional noPrestamo→
importe es de tipo no trivial.

Por lo tanto,Esquema-info-prestamo no satisface la
definición de FNBC.




Considérese la descomposición de
Esquemainfo-préstamo en dos esquemas:
Esquema-préstamo =( noPrestamo,
nomSucursal, importe)
Esquema-prestatario =( nomCliente,
noPrestamo)
Esta descomposición es una descomposición
de reunión sin pérdida.


3FN se sabe que siempre resulta posible obtener
un diseño en 3FN sin sacrificar la reunión sin
pérdida o la conservación de las dependencias.
Sin embargo, hay inconvenientes en 3FN: si no se
eliminan todas las dependencias transitivas de
las relaciones de los esquemas, puede que se
tengan que emplear valores nulos para
representar
algunas
de
las
relaciones
significativas posibles entre los datos, y está el
problema de repetición de la información.

La posibilidad de violar las condiciones FNBC
puede aparecer cuando:
◦ La relación contenga dos o más claves candidatas
compuestas.
◦ Las claves candidatas se solapen, es decir, tengan
atributos en común.

Considérese el ejemplo bancario. Supóngase que, en un diseño
alternativo del esquema de la base de datos, se tiene el esquema

Esquema-BC= ( noPrestamo, nomCliente, calleCliente, ciudadCliente)

No está en FNBC debido a la dependencia funcional

nomCliente→ calleCliente ciudadCliente

que se estableció anteriormente, y debido a que nombre-cliente no es
una clave de

Esquema -BC. Sin embargo, supóngase que el banco está atrayendo a
clientes ricos que tienen varios domicilios (por ejemplo, una residencia
de invierno y otra de verano). Entonces ya no se deseará hacer que se
cumpla
la
dependencia
funcional
nomCliente→
calleCliente
ciudadCliente.



Para tratar este problema hay que definir una
nueva forma de restricción, denominada
dependencia multivalorada.
Como se hizo para las dependencias
funcionales, se utilizarán las dependencias
multivaloradas para definir una forma normal
para los esquemas de relación.
Esta forma normal, denominada cuarta forma
normal (4FN), es más restrictiva que FNBC. Se
verá que cada esquema 4FN se halla también
en FNBC, pero que hay esquemas FNBC que
no se hallan en 4FN.


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 B y un conjunto de
valores C.
Sin embargo, los conjuntos de valores de B y
C son independientes entre sí.
Descargar