Beruflich Dokumente
Kultur Dokumente
Cuando se disea una base de datos mediante el modelo relacional, al igual que ocurre en otros modelos de datos,
tenemos distintas alternativas, es decir, podemos obtener diferentes esquemas relacionales y no todos son equivalentes,
ya que algunos van a representar la realidad mejor que otros.
Es necesario conocer qu propiedades debe tener un esquema relacional para representar adecuadamente una realidad
y cules son los problemas que se pueden derivar de un diseo inadecuado.
La teora de la Normalizacin es un mtodo objetivo y riguroso que se aplica en el diseo de bases de datos relacionales.
Cuando estudiamos la estructura del modelo relacional, nos dimos cuenta que la base de datos puede representarse por
medio de un conjunto de objetos (dominios y relaciones) y de un conjunto de reglas de integridad.
El esquema relacional puede obtenerse de dos formas distintas:
Directamente a partir de la observacin de nuestro universo del discurso, en donde especificamos conjuntos de
atributos, relaciones y restricciones que corresponden a los observados en el mundo real.
Realizando el proceso de diseo en dos fases, primero el diseo conceptual (E/R) obteniendo el esquema
conceptual y posteriormente transformar ste a un esquema relacional, siguiendo algunas reglas generales, que
fueron dadas anteriormente.
Ambigedades
Prdida de dependencias funcionales, es decir, ciertas restricciones de integridad que dan lugar a
interdependencias entre los datos.
En conclusin el esquema relacional obtenido debe ser analizado para comprobar que no presenta los problemas
anteriores.
Analicemos la siguiente relacin: ESCRIBE
AUTOR
NACIONALIDAD
COD_LIBRO
TITULO
EDITORIAL
AO
Date, C.
Norteamericana
98987
Database
Addison
1990
Date, C.
Norteamericana
97777
SQL Stan
Addison, W.
1986
Date, C.
Norteamericana
98987
Guide for
Addison, W.
1988
Codd,E.
Norteamericana
7890
Relational
Addison,W.
1990
Gardarin
Francesa
12345
Basi Dati
Paraninfo
1986
Gardarin
Francesa
67890
Comp BD
Eyrolles
1984
Valduriez
Francesa
67890
Comp BD
Eyrolles
1984
Kim,W.
Norteamericana
11223
BD OO
ACM
1989
Lochovsky
Canadiense
11223
BD OO
ACM
1989
Redundancia, ya que la nacionalidad del autor se repite por cada ocurrencia del mismo. Lo mismo sucede
cuando un libro tiene mas de un autor, se repite la editorial y el ao de publicacin.
Anomalas de modificacin, es fcil cambiar el nombre de una editorial en una tupla sin modificar el resto de las
que corresponden al mismo libro, lo que da lugar a incoherencias.
Anomalas de insercin, ya que si queremos ingresar informacin de algn autor, del que no hubiera ningn libro
en la base datos, no sera posible, ya que cod_libro es parte de la clave primaria de la relacin (regla de
integridad de la entidad). La insercin de un libro, que tiene dos autores obliga a insertar dos tuplas en la
relacin.
Anomalas de borrado, ya que si queremos eliminar un cierto libro, deberamos perder los datos de su autor y
viceversa.
En los casos anteriores, se deja en manos del usuario manejar la integridad de la base de datos.
Lo anterior sucede pues no se cumple un hecho bsico de todo diseo:
el conocimiento de las claves candidatas permite averiguar todas las interrelaciones existentes entre los datos de la
relacin, o lo que es igual, las claves candidatas son los nicos descriptores sobre los que se facilita informacin por
cualquier otro atributo.
En la relacin PRESTAMO1, num_socio es informacin acerca de nombre_socio y viceversa. Ninguno de estos atributos
son clave (aunque formen parte de la clave). Para solucionarlo la descomponemos:
SOCIO( num_socio, nombre_socio )
PRESTAMO2( num_socio, cod_libro, fec_prest ), que estn en FNBC.
Hasta ahora nuestro esquema relacional est compuesto por las siguientes relaciones en FNBC:
LIBRO1( cod_libro, editorial )
EDITORIAL( editorial, pas )
SOCIO( num_socio, nombre_socio )
PRESTAMO2( num_socio, cod_libro, fec_prest )
La teora de la normalizacin se basa en restricciones definidas sobre los atributos de una relacin. que son conocidas
como dependencias. Existen varios tipos de dependencias:
5.2.-Dependencias funcionales
Sea el esquema de relacin R definido sobre el conjunto de atributos A y sean X e Y subconjuntos
de A llamados descriptores. Se dice que Y depende funcionalmente de X o que X determina o implica a Y, que se
representa por X Y, si solo si, cada valor de X tiene asociado en todo momento un nico valor de Y.
ej: cod_libro titulo, el cdigo del libro determina el titulo. El cod_libro es el implicante y titulo es el implicado. Siempre el
implicado es un hecho (una informacin) acerca del implicante.
OBS1: la afirmacin cod_libro determina titulo NO significa que a partir de cod_libro podamos conocer el titulo. Es decir,
para un esquema R, si tenemos la dependencia funcional X Y, dado un valor de X no podemos en general conocer el
valor de Y. Solo nos limitaremos a firmar que para dos tuplas de cualquier extensin de R que tengan el mismo valor
de X, el valor de Y tambin ser igual en ambas.
OBS2: Las dependencias son predicados o restricciones sobre cualquier extensin vlida del esquema de relacin, por
lo que observar una determinada extensin (datos) no puede llevarnos a afirmar la existencia de una dependencia
funcional.
XY
X1 | Y
X2 | Y. Se representa X Y.
X Y si y solo si NO X X / X Y.
Ejemplos:
La relacin PUBLICA( articulo, revista, numero, pagina ), que representa la pagina inicial en la que comienza un articulo
en una revista. Un mismo articulo puede aparecer publicado en distintas revistas y en cada una de ellas, en paginas
distintas y una revista publica varios artculos, se tiene:
articulo, revista, numero pagina
articulo | pagina
revista | pagina
numero | pagina
Dado un conjunto de atributos A y un conjunto de dependencias entre ellos, D, que constituyen un esquema de
relacin R(A,D) (esquema origen), se trata de transformar este esquema original en un conjunto de n esquemas de
relacinRi(Ai,Di), i=1,n (esquemas resultantes), que cumplan determinadas caractersticas.
Estas son:
Conservacin de la informacin
5.3.1.-Conservacin de la informacin
Se debe cumplir:
Conservacin de los atributos
U Ai = A, i=1, n.
Conservacin del contenido (las tuplas)
EDITORIAL
PAIS
9030
RAMA
ESPAA
9110
RAMA
ESPAA
9040
PARANINFO
ESPAA
9234
ANAYA
ESPAA
9567
ADD.WES
USA
LIBRO1(COD_LIBRO, PAIS)
COD_LIBRO
PAIS
9030
ESPAA
9040
ESPAA
9110
ESPAA
9234
ESPAA
9567
USA
EDITORIAL(EDITORIAL, PAIS)
EDITORIAL
PAIS
RAMA
ESPAA
RAMA
ESPAA
PARANINFO
ESPAA
ANAYA
ESPAA
ADD.WES
USA
LIBRO1 * EDITORIAL
COD_LIBRO
EDITORIAL
PAIS
9030
RAMA
ESPAA
9030
PARANINFO
ESPAA
9030
ANAYA
ESPAA
9040
RAMA
ESPAA
9040
PARANINFO
ESPAA
9040
ANAYA
ESPAA
9010
RAMA
ESPAA
9110
PARANINFO
ESPAA
9010
ANAYA
ESPAA
9234
RAMA
ESPAA
9234
PARANINFO
ESPAA
9234
ANAYA
ESPAA
9567
ADD.WES
USA
Est en 1FN
Cada atributo no principal tiene dependencia funcional completa respecto de cada una de las claves.
ejemplo: La relacin
PUBLICA2( articulo, revista, numero, pagina, editorial )
que refleja en qu numero de qu revista se publica un artculo, en qu pagina comienza y cul es la editorial.
Tenemos las siguientes dependencias:
articulo, revista, numero pagina
revista editorial
clave:(articulo, revista, numero)
Esta relacin no esta en 2FN, ya que editorial depende de la revista y tiene redundancia, pues se repite la editorial para
cada articulo que se publica en una revista.
Tercera Forma Normal:
Est en 2FN
Ejercicio:
R( estudiante, nro_matricula,curso,centro, profesor, texto ), con las restricciones:
Un estudiante tiene un numero de matrcula distinto para cada curso en el que est matriculado
Un curso es impartido por un solo profesor, pero un profesor puede impartir varios cursos
Un curso se apoya en distintos textos y un mismo texto puede servir de soporte a varios cursos.
Las dependencias multivaluadas son una generalizacin de las dependencias funcionales. En stas un conjunto de
valores del implicado, son determinados por un implicante. Esta situacin aparece cuando existen grupos repetitivos.
Ej: la siguiente tabla
AUTORES
AUTOR
MATERIA
INSTITUCION
Date
Ullman
Stanford Univ.
AUTORES
AUTOR
MATERIA
INSTITUCION
Date
Lenguaje SQL
Relational Inst
Date
Lenguaje SQL
Date
Diseo BD
Date
Diseo BD
Relatinal Inst.
Ullman
Diseo BD
Stanford Univ.
Ullman
Bases Conc.
Stanford Univ
Esta tabla normalizada presenta gran cantidad de redundancia. La clave es el conjunto de los 2 atributos. Por lo que est
en FNBC.
En ella tenemos que un autor multidetermina a materia y un autor multidetermina a institucin.
Las dependencias multivaluadas se producen cuando existen interrelaciones N:M independientes entre si. Entre autor y
materia hay una interrelacin N:M y tambin entre autor e institucin y materia e institucin son independientes.
Definicin Dependencia Multivaluada.
Fagin (1977). La dependencia multivaluada se denota X Y, y se lee X multidetermina a Y, y significa que X implica
un conjunto de valores de Y con independencia de los dems atributos de la relacin.
Las dependencias multivaluadas dependen del contexto, es decir influye el resto de los atributos de la relacin.
Si agregamos un atributo a AUTORES, departamento, que nos indica el departamento de una institucin en el que se
trabaja en una cierta materia, obteniendo:
AUTOR
MATERIA
INSTITUCION
DEPTO
Date
Lenguaje SQL
Relational Inst.
Lenguajes
Date
Lenguaje SQL
Bases de Datos
Date
Diseo BD
Analisis
Date
Diseo BD
Relatinal Inst.
Bases de Datos
Ullman
Diseo BD
Stanford Univ.
Lenguajes
Ullman
Bases Conc
Stanford Univ.
Inteligencia Artificial
Aqu, la dependencia autor materia no se cumple, porque depende del contexto ( de depto).
Cuarta Forma Normal (4 FN)
Una relacin se encuentra en 4FN, si y solo si, las nicas dependencias multivaluadas no triviales son aquellas en las
cuales una clave multidetermina un atributo, es decir, toda dependencia multivaluada viene determinada por una clave
candidata.
En la tabla AUTORES(autor, materia, institucin), existen las dependencias multivaluadas:
autor materia y autor institucin. La relacin no se encuentra en 4FN, ya que estas dependencias estn
implicadas por autor, que no es clave candidata. La clave candidata es el conjunto de los tres atributos.
Para normalizarla se descompone en 2 proyecciones:
AUTORES1(autor, materia)
AUTORES2(autor,institucion), que si estn en 4FN.
Revisar la 5FN en libros.
5.6.-Organizacin de Relaciones
- estructuracin (consideraciones lgicas)
Normalizacin
Particionamiento horizontal
Desnormalizacin
Esta estructuracin permite eliminar valores nulos, debido en general a no haberse detectado los subtipos de una entidad
o haberlas reunido en una sola entidad.
DOCUMENTO(cod-doc, titulo, idioma, editorial)
Que almacena datos de libros y artculos. El atributo editorial es inaplicable a articulo, podramos descomponer la
relacin en:
LIBRO(cod-doc, titulo, idioma, editorial)
ARTICULO(cod-doc, titulo, idioma)
Relacin origen pasa por seleccin a una que tiene todos los atributos que la original, pero contiene valores conocidos
junto con otra a travs de seleccin que contiene solo los atributos no nulos, eliminando el atributo de la relacin origen
que tenia nulos (proyeccin).
La construccin de la relacin original se realiza por medio de la unin relacional, despus de aadir los atributos para
que sean compatibles en la unin.
Desnormalizacion y Particionamiento
Son mtodos o formas de organizar las relaciones, teniendo en cuenta razones de tipo fsico: