Sei sulla pagina 1di 12

UNIDAD 3: Modelo Relacional

Semana 5
Tema 1. ESTRUCTURA DEL MODELO RELACIONAL
El modelo de datos relacional fue introducido por Edgar F. Codd (1970). Se
basa en una estructura de datos simple y uniforme la relacin y tiene
fundamentos tericos slidos
El modelo relacional representa la base de datos como una coleccin de
relaciones. En trminos mnimos informales, cada relacin semeja una tabla o,
hasta cierto punto, un archivo simple.
Codd daba 12 reglas que debe cumplir cualquier base de datos que desee
considerarse relacional:
La definicin de relacin desde el punto de vista matemtico es: Una relacin
es un subconjunto de un producto cartesiano de un listado de dominios.
El producto cartesiano son todas las combinaciones posibles entre conjuntos.
Ej.: Dados los conjuntos A y B, donde:
A= {a, b, c}

B= {1, 2 }

el producto cartesiano de A x B es:


A x B = {(a,1), (b,1), (c,1), (a,2), (b,2), (c,2)}
Una relacin cualquiera entre los conjuntos A y B, puede ser:

A
B

a
b
c

11

{(a,1), (b,2), (c,2)}

2
2

Esta relacin es un subconjunto del producto cartesiano.


Ejemplo de una relacin o tabla de una BD relacional:

PRODUCTO
cod_prd
nom_prd
p_111
Talonario
p_112
Cuaderno
p_113
Lpiz

valor
100
150
80

Para cada atributo existe un conjunto de valores permitidos llamado dominio de


ese atributo.
Los dominios corresponden a los tipos de datos primitivos de los lenguajes de
programacin.
Cada fila representa una tupla y una tupla es un conjunto ordenado de valores
(atributos).
Por tanto una relacin es un conjunto de tuplas filas o registros. Cada atributo,
columna o campo slo puede tomar un nico valor del dominio.
El grado de una tabla = numero de columnas
La cardinalidad = numero de registros
Debido a que las tablas son bsicamente relaciones se utilizan los trminos
matemticos relacin y tupla en lugar de los de tabla y fila.
Cuando se habla de una BD debe diferenciarse entre el esquema de la BD, es
decir, el diseo lgico de la BD y una instancia de la BD que est constituida
con la informacin contenida en la BD en un momento determinado.
El esquema de una relacin es en general una lista de atributos y sus
correspondientes dominios; la notacin para ello sera:
Producto= (cod_prd: string, nom_prd: string, valor: numrico)
Sin embargo, no es necesario hacer una definicin precisa del dominio de cada
atributo, sino hasta el momento de la implementacin. Por tanto la notacin
puede ser:
Producto= (cod_prd, nom_prd, valor)
El esquema de la BD en este modelo, es el conjunto de definiciones de sus
esquemas.

Ej.: Para una empresa productora de partes, supondremos el siguiente


conjunto de esquemas de relaciones:
Parte= (nro_pte, nom_pte, color, peso, ciudad)
Proveedor= (nro_prv, nom_prv, ciudad_prv)
Suministro= ( nro_prv,nro_pte,cantidad_sum)
La caracterstica fundamental de este modelo de datos es que las asociaciones
entre tuplas (entidades) se representan nicamente por valores de datos en
columnas, sacados de un dominio comn.
Ej.: La asociacin entre PROVEEDOR y SUMINISTRO se da por el campo
nro_prv que debe ser igual en ambas relaciones cuando se refieren a un
PROVEEDOR determinado.
Tema 2. TEORIA RELACIONAL(LAS DOCE REGLAS DE CODD)
1. Regla de informacin:
Todos los datos de una base de datos relacional se representan
explcitamente (al nivel lgico) como valores de tablas.
2. Reglas de acceso garantizado:
Todos y cada uno de los datos (valor indisoluble, nico o atmico) de una
base de datos relacional se garantiza que sean lgicamente accesible
recurriendo a una combinacin de nombres de tabla, valor de clave primaria
y nombre de columna.
3. Tratamiento sistemtico de valores Nulos:
Los valores nulos (distinto de cadena de caracteres vacas o de una
cadena de caracteres en blanco y distinta de cero o de cualquier otro
nmero) se soporta en los SGBD completamente relacionales para
representar la falta de informacin y la informacin inaplicable de un modo
sistemtico e independiente del tipo de datos.
4. Catalogo en lnea dinmico basado en el modelo relacional:
La descripcin de la base de datos o Catalogo se representa (o almacena)
a nivel lgico como valores en tablas, del mismo modo que los datos
ordinarios, de modo que los usuarios autorizados pueden aplicar a los datos
regulares.
5. Regla de sublenguaje completo de datos:
un sistema relacional puede soportar varios lenguajes de manipulacin de
datos (DMI) y varios modos de uso terminal (por ejemplo, el modo de
rellenar con blancos), sin embargo debe haber al menos un lenguaje cuyas
sentencias sean expresables, mediante alguna sintaxis bien definida, como
3

cadenas de caracteres, y que sea completa en cuanto al soporte de todos


los puntos siguientes:
Definicin de datos y Definicin de vistas
Manipulacin de datos (interactiva y por programa)
Restricciones de integridad
Autorizacin
Fronteras de transacciones (comienzo, complementacin y vuelta atrs)
6. Regla de actualizacin de vistas:
Todas las vistas que puedan utilizarse son tambin actualizables por el
sistema.
7. Insercin, Modificacin y Borrado de alto nivel:
Un SGBDR debe hacer ms que recuperar conjuntos relacionales de datos,
tambin debe ser capaz de insertar, actualizar y eliminar datos como un
conjunto relacional.
8. Independencia fsica de los datos:
Los datos deben ser fsicamente independiente de los programas de
aplicacin. Los programas de aplicacin y las actividades terminales
permanecen lgicamente inalterados cualquiera que sean los cambios
efectuados ya sea las representaciones de almacenamiento o a los
mtodos de acceso.
9. Independencia lgica de los datos:
Cada vez que sea posible, el Software de aplicacin debe ser independiente
de los cambios hechos a las tablas Base. Los programas de aplicacin y
las actividades terminales permanecen lgicamente inalterados cuando se
efectan sobre las tablas de base de cambios preservadores de la
informacin de cualquier tipo que tericamente permita alteraciones.
10. Independencia de integridad:
La integridad de los datos debe ser definible en el lenguaje relacional y
almacenarse en el Catlogo. Las restricciones de integridad especficas
para una base de datos relacional y almacenables en el catlogo, no en los
programas de aplicacin.
11. Regla de no subversin:
Si un sistema relacional tiene un lenguaje de bajo nivel (un solo registro
cada vez), ese bajo nivel no puede ser utilizado para subvertir o suprimir las
reglas de integridad y las restricciones expresadas en el lenguaje relacional
de nivel superior (mltiples registros a la vez)

12. Un sistema de bases de


independencia distributiva.1

datos

relacional(SGBDR)

tiene

TRANSFORMACIN DEL MODELO E-R EN TABLAS RELACIONALES


Si la BD se ajusta a un diagrama E-R, estas son las reglas de transformacin:
1- Las entidades se representan en tablas (relaciones) y los atributos en
columnas.
2- Las asociaciones 1:N se representan replicando la llave primaria de la tabla
del lado 1, como columna externa en la tabla del lado muchos. A esta columna
se le denomina llave fornea.
3- Las asociaciones 1:1 se representan replicando la llave primaria en una de
las dos tablas como columna externa de la otra.
4- Las asociaciones M:N deben resolverse generando una tercera entidad
denominada de interseccin la cual tendr como llave primaria la combinacin
de las llaves primarias de las entidades que intersecta, mas los atributos
resultantes de la asociacin, si existen. Las asociaciones 1:M resultantes se
resuelven de acuerdo con la regla de representacin de entidades (es decir, en
tablas independientes).

ALUMNO

Sujeto a

EVALUACION
Efectuado a

ALUMNO
EVALUACIN
Sujeto a

Corresponder a

Corresponder a
NOTA

Efectuar

Las 12 reglas de Codd. Obtenido en Internet el 23 de Octubre de 2008. Hora: 9.50 pm.
http://www.atpsoftware.net/Public/Articulos.php

Tema 3. TEORA DE LA NORMALIZACIN

La primera aproximacin del diccionario de datos (el diccionario de datos es la


definicin de los campos o atributos contenidos en las tablas y se define
usando DDL), presenta ciertos problemas de redundancia, dependencia, etc.
Es necesario optimizar el diseo para conservar la consistencia e integridad de
los datos y a la vez optimizar el espacio de almacenamiento eliminando la
redundancia. Para esto se lleva a cabo un proceso que se llama
NORMALIZACIN y comprende varias Formas Normales.
La normalizacin se adopt porque el viejo estilo de poner todos los datos en
un solo lugar, como un archivo o una tabla de la base de datos, era ineficiente y
conduca a errores de lgica cuando se trataba de manipular los datos. De esta
forma la normalizacin ayuda a clarificar la base de datos ya organizarla en
partes ms pequeas y ms fciles de entender, adems de otras ventajas
destacables como la disminucin de espacio en disco.
El concepto de dependencia funcional:

Es el concepto ms importante en el diseo de esquemas relacionales. Una


dependencia funcional es una restriccin entre dos conjuntos de atributos de la
base de datos.
Para entender el concepto vamos a hacer una serie de suposiciones:
Vamos a suponer que el esquema de base de datos relacional tiene una serie
de atributos A1, A2, A3, ..., An.. y que la base de datos se describe como un
solo esquema de relacin universal R={A1, A2, A2,....,An}; es como si
tuviramos una sola tabla, pero solo para explicar el concepto. La dependencia
funcional es una restriccin , que vamos a denotar como X->Y, donde X e Y
son dos subconjuntos de R, sobre las posibles tuplas, registros o filas que
podran formar un ejemplar de relacin en R. La restriccin dice que para
cualesquier dos tuplas t1 y t2 tales que el valor t1[X] = t2[X], debemos tener
t1[Y] = t2[Y]; es decir, que los valores del componente Y de una tupla
dependen de los valores del componente X. En otras palabras podramos decir
que los valores del componente X (Que denominaremos Miembro izquierdo)
determinan de manera nica los valores del componente Y (que
denominaremos Miembro derecho).
As que si una restriccin de R dice que no puede haber ms de una tupla con
un valor X, se dice que X es una clave candidata. Esto implica que para todo
subconjunto de atributos Y de R X->Y.

Ejemplo: Veamos la siguiente definicin o esquema funcional:


TERCERO {Tercero,
Es_Proveedor, Fecha}

Nombre,

NSS,

Apellidos,

Direccin,

Es_Cliente,

Veamos las dependencias funcionales:


Tercero-> Nombre.
NSS ->Nombre
Tercero -> NSS
{Tercero,NSS} -> Nombre2
Qu es la normalizacin
Se entiende por normalizacin la descomposicin o subdivisin de una relacin
en dos o ms relaciones para evitar la redundancia; en definitiva, que "cada
hecho est en su lugar".
La normalizacin es el proceso mediante el cual se transforman datos
complejos a un conjunto de estructuras de datos ms pequeas, que adems
de ser ms simples y ms estables, son ms fciles de mantener. Tambin se
puede entender la normalizacin como una serie de reglas que sirven para
ayudar a los diseadores de bases de datos a desarrollar un esquema que
minimice los problemas de lgica. Cada regla est basada en la que le
antecede. La normalizacin se adopt porque el viejo estilo de poner todos los
datos en un solo lugar, como un archivo o una tabla de la base de datos, era
ineficiente y conduca a errores de lgica cuando se trataban de manipular los
datos. La normalizacin tambin hace las cosas fciles de entender. Los seres
humanos tenemos la tendencia de simplificar las cosas al mximo. Lo hacemos
con casi todo, desde los animales hasta con los automviles. Vemos una
imagen de gran tamao y la hacemos ms simple agrupando cosas similares
juntas. Las guas que la normalizacin provee crean el marco de referencia
para
simplificar
una
estructura
de
datos
compleja.
Otra ventaja de la normalizacin de base de datos es el consumo de espacio.
Una base de datos normalizada ocupa menos espacio en disco que una no
2

.Dependencia funcional e independencia, manual de la Universidad de Mlaga. Obtenido en Internet


el 23 de Octubre de 2008. Hora: 9.50 pm.
http://ftp.medprev.uma.es/libro/node33.htm

normalizada. Hay menos repeticin de datos, lo que tiene como consecuencia


un
mucho
menor
uso
de
espacio
en
disco.
El proceso de normalizacin tiene un nombre y una serie de reglas para cada
fase. Esto puede parecer un poco confuso al principio, pero poco a poco se va
entendiendo el proceso, as como las razones para hacerlo de esta manera.
Proceso de normalizacin
El proceso de normalizacin es un estndar que consiste, bsicamente, en un
proceso de conversin de las relaciones entre las entidades, evitando:

La redundancia de los datos: repeticin de datos en un sistema.


Anomalas de actualizacin: inconsistencias de los datos como resultado
de datos redundantes y actualizaciones parciales.
Anomalas de borrado: prdidas no intencionadas de datos debido a que
se han borrado otros datos.
Anomalas de insercin: imposibilidad de adicionar datos en la base de
datos debido a la ausencia de otros datos.

Grados de normalizacin
Existen bsicamente tres niveles de normalizacin: Primera Forma Normal
(1NF), Segunda Forma Normal (2NF) y Tercera Forma Normal (3NF). Cada
una de estas formas tiene sus propias reglas. Cuando una base de datos se
conforma a un nivel, se considera normalizada a esa forma de normalizacin.
No siempre es una buena idea tener una base de datos conformada en el nivel
ms alto de normalizacin, puede llevar a un nivel de complejidad que pudiera
ser evitado si estuviera en un nivel ms bajo de normalizacin.
En la tabla siguiente se describe brevemente en que consiste cada una de las
reglas, y posteriormente se explican con ms detalle. 3

Normalizacin de base de datos, Prof. Manuel Torres Remon.

Obtenido en Internet el 23 de Octubre de 2008.

Hora: 9.50 pm.


http://www.monografias.com/trabajos5/norbad/norbad.shtml

Regla

Primera
(1FN)

Descripcin

Forma

Una relacin R se encuentra en 1FN si y


solo s por cada rengln columna contiene
valores atmicos.

Abreviada como 1FN, se considera que


una relacin se encuentra en la primera
forma normal cuando cumple lo siguiente:
Las celdas de las tablas poseen valores
simples y no se permiten grupos ni
arreglos repetidos como valores, es decir,
contienen un solo valor por cada celda.
Todos los ingresos en cualquier columna
(atributo) deben ser del mismo tipo.
Cada columna debe tener un nombre
nico.
Dos filas o renglones de una misma tabla
no deben ser idnticas, aunque el orden
de las filas no es importante.

Normal

Para definir formalmente la segunda


forma normal requerimos saber que es
una dependencia funcional: Consiste en
edificar que atributos dependen de otro(s)
atributo(s).
Una relacin se encuentra en segunda
forma normal, cuando cumple con las
reglas de la primera forma normal y todos
sus atributos que no son claves (llaves)
dependen por completo de la clave . De
acuerdo con est definicin, cada tabla
que tiene un atributo nico como clave,
esta en segunda forma normal.

Segunda Forma Normal


(2FN)

Tercera
(3FN)

Forma

Normal

Para definir formalmente la 3FN


necesitamos
definir
dependencia
transitiva: En una afinidad (tabla
bidimensional) que tiene por lo menos 3
atributos (A,B,C) en donde A determina a
B, B determina a C entonces A determina
a C.

Una relacin R esta en FNBC si y solo si


cada
determinante es una llave
candidato.
Forma Normal de Boyce
Ejemplo
Codd
Trabajador(cedula,
nombre,
cargo,
prima)
Pero el cargo determina la prima

Cuarta forma normal.

Existe una dependencia de valores


mltiples cuando una afinidad tiene por
lo menos tres atributos, dos de los cuales
poseen valores mltiples y sus valores
dependen solo del tercer atributo, en
otras palabras en la afinidad R (A,B,C)
existe una dependencia de valores
mltiples si A determina valores mltiples
de B, A determina valores mltiples de C,
y B y C son independientes entre s.
Para
entender
mejor
an
esto
consideremos una afinidad (tabla)
llamada estudiante que contiene los
siguientes atributos: Claves, estudiante,
Especialidad y Curso
En la tabla anterior Clave estudiante
determina
valores
mltiples
de
especialidad y clave estudiante
determina valores mltiples de curso,
pero especialidad y curso son
independientes entre s.
Las dependencias de valores mltiples se
definen de la siguiente manera: Clave ->>Especialidad y Clave->->Curso; Esto se
lee "Clave multidetermina a Especialidad,
y clave multidetermina a Curso
Existen otras dos formas normales, la
llamada quinta forma normal (5FN) que no
detallo por su dudoso valor prctico ya
que conduce a una gran divisin de
tablas, pero que no pueden reconstruirse.

Otras formas normales

y la forma normal dominio / clave


(FNDLL) de la que no existe mtodo

10

alguno para su implantacin.

Qu tan lejos debe llevar la normalizacin?


La siguiente decisin es qu tan lejos debe llevar la normalizacin? La
normalizacin es una ciencia subjetiva. Determinar las necesidades de
simplificacin depende de nosotros. Si nuestra base de datos va a proveer
informacin a un solo usuario para un propsito simple y existen pocas
posibilidades de expansin, normalizar los datos hasta la 3FN quiz sea algo
exagerado. Las reglas de normalizacin existen como guas para crear tablas
que sean fciles de manejar, as como flexibles y eficientes. A veces puede
ocurrir que normalizar los datos hasta el nivel ms alto no tenga sentido.
Se estn dividiendo tablas slo para seguir las reglas o estas divisiones son
en verdad prcticas?. stas son el tipo de cosas que nosotros como
diseadores de la base de datos, necesitamos decidir, y la experiencia y el
sentido comn nos pueden auxiliar para tomar la decisin correcta. La
normalizacin no es una ciencia exacta, ms bien subjetiva.
Existen seis niveles ms de normalizacin que no se han discutido aqu. Ellos
son Forma Normal Boyce-Codd, Cuarta Forma Normal (4NF), Quinta Forma
Normal (5NF) o Forma Normal de Proyeccin-Unin, Forma Normal de
Proyeccin-Unin Fuerte, Forma Normal de Proyeccin-Unin Extra Fuerte y
Forma Normal de Clave de Dominio. Estas formas de normalizacin pueden
llevar las cosas ms all de lo que necesitamos. stas existen para hacer una
base de datos realmente relacional. Tienen que ver principalmente con
dependencias mltiples y claves relacionales. 4

Normalizacin de Bases de Datos. Obtenido en Internet el 23 de Octubre de 2008. Hora: 9.50 pm.
http://www.trucostecnicos.com/trucos/ver.php?id_art=278

11

Bibliografa
Korth, Henry ; Siberschatz, Abram. Fundamentos de Bases de datos.
Mc Graw Hill.
Gary W,Hansen; James V,Hansen. Diseo y administracin de Bases de
Datos. Prentice Hall, 1997. 834 p.
C.J Date. Addison-Wesley. Introduccin a los Sistemas de Bases de Datos.
Cibergrafia
Las 12 reglas de Codd. Obtenido en Internet el 23 de Octubre de 2008. Hora:
9.50 pm.
http://www.atpsoftware.net/Public/Articulos.php
Dependencia funcional e independencia, manual de la Universidad de Mlaga.
Obtenido en Internet el 23 de Octubre de 2008. Hora: 9.50 pm.
http://ftp.medprev.uma.es/libro/node33.htm
Normalizacin de base de datos, Prof. Manuel Torres Remon. Obtenido en
Internet el 23 de Octubre de 2008. Hora: 9.50 pm.
http://www.monografias.com/trabajos5/norbad/norbad.shtml
Normalizacin de Bases de Datos. Obtenido en Internet el 23 de Octubre de
2008. Hora: 9.50 pm.
http://www.trucostecnicos.com/trucos/ver.php?id_art=278

12

Potrebbero piacerti anche