Você está na página 1de 14

1

INDICE
INDICE ........................................................................................................................................................... 2
El Algebra Relacional ..................................................................................................................................... 3
Algebra Relacional - Seleccin .................................................................................................................. 3
Algebra Relacional - Proyeccin................................................................................................................ 4
Algebra Relacional - Unin ........................................................................................................................ 4
Algebra Relacional - Interseccin ........................................................................................................ 5
Algebra Relacional - Interseccin.............................................................................................................. 5
Algebra Relacional - Diferencia ................................................................................................................. 5
Algebra Relacional - Producto................................................................................................................... 6
Cartesiano ................................................................................................................................................. 6
Algebra Relacional - Producto................................................................................................................... 7
Cartesiano ................................................................................................................................................. 7
Operadores Derivados .............................................................................................................................. 7
Algebra Relacional - Join ........................................................................................................................... 8
Algebra Relacional - Join ...................................................................................................................... 8
Algebra Relacional - Join ........................................................................................................................... 8
Normalizacin ............................................................................................................................................... 9
Qu es la normalizacin .......................................................................................................................... 10
Grados de normalizacin ........................................................................................................................ 10
Primera Forma Normal ........................................................................................................................... 11
Segunda Forma Normal .......................................................................................................................... 11
Tercera Forma Normal ............................................................................................................................ 11
Qu tan lejos debe llevar la normalizacin? ......................................................................................... 14

2
El Algebra Relacional
Vision General:
Conjunto de operadores para consultar BD- Rs.
Define conjunto de ops estandar en BD- Rs.
Operadores que reciben relaciones y devuelven
relaciones:
Sobre conjuntos de tuplas:
Union, Diferencia, Producto Cartesiano.
Sintaxis
Qu smbolos se utilizan para cada operador
y qu parmetros recibe.

Cul es el esquema del resultado?.


Cul es la instancia del resultado?.
Qu condiciones se deben cumplir para que
se pueda aplicar el operador?.
Algebra Relacional - Seleccin
Descripcin General:

condicin.
taxis:
< condicin > (< relacin >)
donde:
condicin es una condicin lgica sobre
valores de los atributos de las tuplas resultado.
relacin es una relacin o expresin
relacional.

Algebra Relacional - Seleccin

Sea R una relacin y c una condicin.

3
<c> (R)
da como resultado otra relacin con
esquema igual que el de R con instancia el
conjunto de tuplas de la instancia de R que
cumplen con la condicin c.
Ejemplos:
o APELLIDO=GONZALEZ (EMPLEADO)
o Salario>3000 (EMPLEADO)
APELLIDO=GONZALEZ and (EMPLEADO)
o Salario>3000
not (APELLIDO=GONZALEZ (EMPLEADO)
o and Salario>3000)

Algebra Relacional - Proyeccin


Descripcin General:

de atributos.

<lista_atributos> (<relacin>)
donde:
lista_atributos es una lista de atributos a
aparecer en la relacin resultado.
relacin es una relacin o expresin
relacional.
Proyeccin ().
Sea R una relacin.
A1 ,. . . , An (R)
da como resultado otra relacin:
con esquema (A1,...,An)
con tuplas formadas a partir de las de R,
tomando los valores para los atributos A1,...,An.

Como no se admiten tuplas repetidas, al realizar


una proyeccin, podran quedar menos tuplas que
en la relacin de partida.
Ejemplos:
n (FABS)

Algebra Relacional - Unin


Descripcin General:

4
tomadas como conjuntos de tuplas.

(<relacin>) U (<relacin>)
donde:
relacin es una relacin o expresin
relacional.
Unin:
Sean R y S dos relaciones con igual esquema
(o compatible).
La operacin:
(R S)
da como resultado otra relacin:
cuyo esquema es igual al de R (y S),
y que tiene como conjunto de tuplas a la
unin de las de R y las de S.

Algebra Relacional - Interseccin


Descripcin General:

tomadas como conjuntos de tuplas.

(<relacin>) (<relacin>)
donde:
relacin es una relacin o expresin
relacional.

Algebra Relacional - Interseccin

Sean R y S dos relaciones con igual esquema


(o compatible).
La operacin:
(R S)
da como resultado otra relacin:
cuyo esquema es igual al de R (y S),
y que tiene como conjunto de tuplas a la
interseccin de las de R y las de S.

Algebra Relacional - Diferencia


Descripcin General:

tomadas como conjuntos de tuplas.

5
(<relacin>) - (<relacin>)
donde:
relacin es una relacin o expresin
relacional.
Diferencia:
Sean R y S dos relaciones con igual esquema
(o compatible).
La operacin:
(R - S)
da como resultado otra relacin:
cuyo esquema es igual al de R (y S),
y que tiene como conjunto de tuplas a la
resta de las de R menos las de S.

Algebra Relacional - Producto


Cartesiano
Descripcin General:

relaciones tomadas como conjuntos de tuplas.

(<relacin>) x (<relacin>)
donde:
relacin es una relacin o expresin
relacional.

Algebra Relacional - Producto

Cartesiano

Sean R y S dos relaciones con esquemas


(A1,...,An) y (B1,...,Bm) respectivamente.
La operacin:
RxS
da como resultado:
otra relacin cuyo esquema es
(A1,...,An,B1,...,Bm)
y cuyas tuplas son generadas por todas las
combinaciones posibles de las de R con las de
S.

6
Algebra Relacional - Producto

Cartesiano

#p<3 (PRODS) x #p<3 (VENTAS)


da como resultado:
#p desc #f #p precio
1 t1 1 1 100
1 t1 1 2 200
2 t2 1 1 100
2 t2 1 2 200
Este operador permite combinar las tuplas de dos
tablas.
Ejemplos:
$2,$3,$4,$5 ( $1<3 (PRODS) x $2<3
(VENTAS))
da como resultado:
desc #f #p precio
t1 1 1 100
t1 1 2 200
t2 1 1 100
t2 1 2 200
La notacin de atributos numerados tambin puede ser
usada en la seleccin.

Operadores Derivados
Los operadores presentados antes son los bsicos
7
del lgebra Relacional.
Se definen otros que se pueden expresar en
funcin de los bsicos, pero que expresan
operaciones importantes dado que se usan
habitualmente.
Estos operadores son:
Join: Permite expresar la combinacin de tablas.
Divisin: Permite obtener los datos que se relacionan
con todos los elementos de otro conjunto.

Algebra Relacional - Join


Descripcin General:
aciones a
travs de una condicin sobre los atributos.

Cartesiano de las relaciones.

(<relacin>) |><| <condicin> (<relacin>)

Algebra Relacional - Join


Join.
Sean R y S dos relaciones, la operacin
R |><|condicin S
es equivalente a realizar :
condicin (R x S).

Algebra Relacional - Join


Natural

Sean R y S dos relaciones, la operacin


R*S
es equivalente a realizar el:
-Join con la condicin de igualdad entre
los atributos de igual nombre y luego proyectar
eliminando columnas con nombre repetido.

8
Normalizacin

9
Qu es la normalizacin
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 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.

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.

10
Primera Forma Normal
La regla de la Primera Forma Normal establece que las columnas repetidas deben eliminarse y
colocarse en tablas separadas.

Poner la base de datos en la Primera Forma Normal resuelve el problema de los encabezados
de
columna mltiples. Muy a menudo, los diseadores de bases de datos inexpertos harn algo
similar a
la tabla no normalizada. Una y otra vez, crearn columnas que representen los mismos datos.
La
normalizacin ayuda a clarificar la base de datos y a organizarla en partes ms pequeas y
ms
fciles de entender. En lugar de tener que entender una tabla gigantesca y monoltica que tiene
muchos diferentes aspectos, slo tenemos que entender los objetos pequeos y ms tangibles,
as
como las relaciones que guardan con otros objetos tambin pequeos.

Segunda Forma Normal


La regla de la Segunda Forma Normal establece que todas las dependencias parciales se
deben
eliminar y separar dentro de sus propias tablas. Una dependencia parcial es un trmino que
describe a
aquellos datos que no dependen de la llave primaria de la tabla para identificarlos.
Una vez alcanzado el nivel de la Segunda Forma Normal, se controlan la mayora de los
problemas de
lgica. Podemos insertar un registro sin un exceso de datos en la mayora de las tablas.

Tercera Forma Normal


Una tabla est normalizada en esta forma si todas las columnas que no son llave son
funcionalmente
dependientes por completo de la llave primaria y no hay dependencias transitivas.
Comentamos
anteriormente que una dependencia transitiva es aquella en la cual existen columnas que no
son llave
que dependen de otras columnas que tampoco son llave.
Cuando las tablas estn en la Tercera Forma Normal se previenen errores de lgica cuando se
insertan
o borran registros. Cada columna en una tabla est identificada de manera nica por la llave
primaria,

11
y no deben haber datos repetidos. Esto provee un esquema limpio y elegante, que es fcil de
trabajar y
expandir.
Un dato sin normalizar no cumple con ninguna regla de normalizacin. Para explicar con un
ejemplo en
que consiste cada una de las reglas, vamos a considerar los datos de la siguiente tabla.

Al examinar estos registros, podemos darnos cuenta que contienen un grupo repetido para
NUM_ITEM,
DESC_ITEM, CANT y PRECIO. La 1FN prohibe los grupos repetidos, por lo tanto tenemos que
convertir a la primera forma normal. Los pasos a seguir son:
Tenemos que eliminar los grupos repetidos.
Tenemos que crear una nueva tabla con la PK de la tabla base y el grupo repetido.

Ahora procederemos a aplicar la segunda formal normal, es decir, tenemos que eliminar
cualquier
columna no llave que no dependa de la llave primaria de la tabla. Los pasos a seguir son:
Determinar cules columnas que no son llave no dependen de la llave primaria de la tabla.
Eliminar esas columnas de la tabla base.
Crear una segunda tabla con esas columnas y la(s) columna(s) de la PK de la cual dependen.
La tabla ORDENES est en 2FN. Cualquier valor nico de ID_ORDEN determina un slo valor
para
cada columna. Por lo tanto, todas las columnas son dependientes de la llave primaria
ID_ORDEN.
Por su parte, la tabla ARTICULOS_ORDENES no se encuentra en 2FN ya que las columnas
PRECIO y

12
DESC_ITEM son dependientes de NUM_ITEM, pero no son dependientes de ID_ORDEN. Lo
que
haremos a continuacin es eliminar estas columnas de la tabla ARTICULOS_ORDENES y
crear una
tabla ARTICULOS con dichas columnas y la llave primaria de la que dependen.
Las tablas quedan ahora de la siguiente manera.

13
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.

14

Você também pode gostar