|
. Objetivos
|
. Respecto a los datos:
Reducir inconsistencias y redundancias de los datos, evitar anomalías en sus manipulaciones,
y reducir el impacto en sus cambios
. Facilitar el
mantenimiento de los datos y programas
|
||||||
|
. Conceptos básicos de dependencia funcional de atributos de
la misma entidad
|
. Dependencia funcional
|
. B depende
funcionalmente de A (se representa AàB) si cada valor de A se corresponde con
un único valor de B
. Es decir, dado A
puedo obtener B
. P.e. si
dado un DNI puedo obtener el nombre de la persona con ese DNI: DNI à Nombre
|
|||||
|
. Dependencia funcional completa
|
. B tiene dep. func.
completa de un grupo de atributos A, si depende funcionalmente de A, pero no
de ningún subcjto de A
. Es decir, A es el mínimo cjto de atributos de los que
depende B (si se añade/quita algún atributo, B ya no depende func.)
. P.e. si una empresa tiene empleados, y una persona
puede ser empleado de varias empresas, hay varias dependencias:
. Para saber el
sueldo de un empleado, necesitamos saber a qué empresa pertenece, es decir,
el sueldo depende del DNI y del identificador de la empresa: DNI.EMPRESAàSUELDO es una dependencia
funcional total
. Nombre depende
funcionalmente de DNI y de Empresa (DNI.EMPRESAàNOMBRE), pero esta dependencia
NO es total, porque en realidad también se puede identificar totalmente al
empleado solo a través del DNI: DNIàNOMBRE
|
||||||
|
. Dependencia transitiva de tres atributos (o grupo de atributos)
A, B y C de una relación; C dependerá transitivamente de A si…
|
. B depende
funcionalmente de A
. C depende
funcionalmente de B
. A no depende
funcionalmente de B
|
P.e. DNIàNOMBRE,
y NOMBREàDIRECCIÓN,
por tanto, DNIàDIRECCIÓN
|
|||||
|
. Procedimiento de Normalización
|
. Relación en 1ª Forma Normal (1FN): una entidad está en 1FN si..
|
. Sus atributos
contienen valores atómicos
. Es decir, no contiene
grupos repetitivos (*)
(*) Ningún atributo puede
tomar más de 1 valor
. Todos los atrib’s
dependen funcionalmente de la clave
|
Si un atributo A viola
la condición de 1FN, tenemos dos opciones..
|
. Duplicar registros con valores repes*
(*) Añadiendo a clave
valores no repes
. Separar el atrib A a otra tabla (**)
(*) La clave se
“arrastra” a la otra tabla
|
|||
|
. Relación en 2ª Forma Normal (2FN): una entidad está en 2FN si..
|
. Está en 1FN
. Todo atrib no clave
tiene dep. func. completa de clave
. I.e.,para determinar
atrib no clave no valen ”subclaves”
|
Para grupos de
atributos A con dep. incompleta ..
|
1.Eliminar de la
relación el atrib A
2.Nueva relación con A
y parte de clave
3.Clave en nueva
relación es esa parte
|
||||
|
. 2FN se aplica a relaciones
con claves de más de 2 atribsàUna relación 1FN con clave simple (1 atrib), siempre es 2FN
. En general, tendremos
que observar atributos no clave que puedan depender de parte de la clave
|
|||||||
|
. Relación en 3ª Forma Normal (3FN): una entidad está en 3FN si..
|
. Está en 2FN
. Todo atrib no clave
no depende transitivamente de clave
. I.e.,cada atrib de la
entidad depende solo de la clave
|
Dado 2FN,las
dependencias func entre atributos no clave,son problemas 3FN: los separamos a
tabla(s) adicional(es); la clave allí será el atributo que define la
transitividad
|
|||||
Barra de menus (paginas)
domingo, 13 de julio de 2014
NORMALIZACION
MODELO LÓGICO RELACIONAL
. El esquema de una BDR
se compone de uno o más esquemas de relación y de un conjunto de
restricciones de integridad
. Dominio es un
conjunto de valores
. Un esquema de
relación (o intensión de una relación) consiste en el nombre de relación,
seguido de los atributos y sus respectivos dominios:
Nombre_relación(Atrib1,Atrib2,..AtribN)
. Relación: Dados los
dominios D1,D2,..Dn, no necesariamente distintos, R es una relación entre
esos n-cjtos si es un cjto de n tuplas (d1,d2,..dn) tal que d1∈d1,.. dn∈Dn
. El nº de atributos de
una relación define su grado,
mientras que el número de tuplas define su cardinalidad
. La extensión u ocurrencia de una
relación es una tabla donde las filas corresponden a las tuplas, y las
columnas a los atributos
|
|||
. Restricciones del modelo relacional (o reglas de
integridad)
|
. Regla de los nulos: cuando un atributo es desconocido à es nulo
|
. Un nulo no representa
valor cero ni cadena vacía (esos son valores con significado)
|
|
. El nulo implica
ausencia de info
|
. Porque al insertar la
tupla se desconocía el valor del atributo
. Porque para dicha
tupla el atributo no tiene sentido
|
||
. Regla de integridad de la entidad: ninguno de los atributos que
componen la clave primaria (de las relaciones base) puede ser nulo
|
|||
. Regla de integridad referencial: si en una relación hay una clave
ajena , sus valores…
|
. Deben coincidir con
valores de la clave primaria a la que hace referencia
. O bien deben ser
completamente nulos
|
||
DISEÑO FÍSICO DE BASES DE DATOS
|
. El diseño físico se
divide en 4 fases, cada una de ellas compuesta por una serie de pasos
|
. Obtención modelo físico para un SGBDR concreto a partir del lógico
|
. Traducir esquema
lógico al SGBD específicoàDiseñar las relaciones base primero, y las reglas de
negocio después, para el SGBD específico
|
. Determinar si el
sistema “destino” soporta la definición de…
|
. Claves primarias,
ajenas y alternativas
. Datos requeridos
(i.e. atributos no nulos)
. Dominios
. Restricciones o
aserciones de usuario
|
|
. Cómo se crean las
tablas
|
||||
|
. Diseñar la representación física
|
. Interacción de los
dispositivos involucrados (mem ppal,cpu, E/S a disco, red), e impacto en
prestaciones
|
|||
|
. Identificación
estructuras manejo de BD: transacciones, organización fich e
índices,introducción redundancias controladas,..
|
||||
|
. Diseñar mecanismos de seguridad
|
. Diseñar las vistas de
los usuariosà CREATE VIEW
. Diseñar las reglas de
accesoà GRANT, REVOKE, triggers…
|
|||
|
. Monitorizar y afinar el sist.,una vez en marcha
|
. Observar las
prestaciones del sist,si no son las deseadas, cambiar el esquema para
intentar satisfacerlas
. Una vez afinado el
esquema (tunning) no pemanecerá estático:cambiará con nuevos requisitos de
los usuarios
. Los SGBD proporcionan
herramientas de performance para monitorizar el sist,y conocer su rendimiento
|
|||
Suscribirse a:
Entradas (Atom)