viernes, 25 de octubre de 2013

BD I - Capítulo 3. Álgebra Relacional: UNION

Comenzaremos nuestro estudio del Álgebra Relacional con la operación UNION

El resultado de esta operación es una relación que contiene todas las tuplas de las relaciones intervinientes en la operación.

Sean las relaciones R = {A, B} y S = {A, B} que visualizamos a continuación


R
A B
a1 b1
a2 b2


S
A B
a1 b1
a3 b3


Estas son dos relaciones distintas pero que tienen exactamente la misma cabecera, es decir, están compuestas por los mismos atributos. Para poder realizar la operación el dominio de los atributos debe ser el mismo.

R UNION S da como resultado la siguiente relación


R UNION S
A B
a1 b1
a2 b2
a3 b3

Podemos ver que contiene todas las tuplas de R y todas las tuplas de S. Además, la tupla (a1, b1) sólo aparece una vez.

Se puede apreciar la similitud entre la unión de relaciones y la unión de conjuntos. Esto se debe a que el álgebra relacional está basada en la teoría de conjuntos.

Veamos ahora un ejemplo más concreto. Sea la relación Personas = {Nombre, Apellido, Edad} y la relación Gente = {Nombre, Apellido, Edad}.
Ambas poseen la misma cabecera y el dominio de sus atributos es idéntico. Por lo tanto podemos llevar a cabo la UNION.


Personas
Nombre Apellido Edad
Juan Fernandez 34
Jose Gonzalez 12
Martin Perez 52
Carlos Alvarez 25


Gente
Nombre Apellido Edad
Oscar Juarez 22
Jose Gonzalez 24
Martin Perez 52
Carlos Alvarez 25


El resultado se ve en la siguiente tabla

Personas UNION Gente
Nombre Apellido Edad
Juan Fernandez 34
Jose Gonzalez 12
Martin Perez 52
Carlos Alvarez 25
Oscar Juarez 22
Jose Gonzalez 24

viernes, 4 de octubre de 2013

BD I - Capítulo 2. Modelo Relacional

La intención de este capítulo es introducir la notación que será utilizada en capítulos posteriores.

El modelo relacional es un modelo matemático abstracto que trabaja con relaciones, definiendo sus propiedades. El álgebra relacional es la que se encarga de definir las operaciones entre relaciones.

Para nosotros, existirá una equivalencia entre relación y tabla. Utilizaremos tablas para representar las relaciones y facilitar su estudio.

Sea la relación R = {A, B, C, D}

Donde R es el nombre de la relación y tanto A, B, C, D son los atributos que la componen.

Ya que dijimos que hablaremos de relaciones y tablas en forma equivalente, veamos cómo representar la estructura de la relación R en una tabla.

R
A B C D
a1 b1 c1 d1
a2 b2 c2 d2
a3 b3 c3 d3
... ... ... ...
an bn cn dn

Vayamos descomponiendo cada uno de los elementos que conforman a la relación R. En primera instancia vemos una cabecera

R
A B C D

Esta cabecera está compuesta de metadatos, son los nombres que recibe cada atributo. En este caso tenemos los atributos A, B, C y D.

Los atributos poseen las siguientes propiedades:

  • Identificador. Es decir, tienen un nombre único
  • Atómico. Los atributos son indivisibles.
  • Dominio. Define los valores legales y las operaciones que puede realizar cada atributo.

Cada fila de la relación R recibe el nombre de tupla. Cada tupla tiene los valores correspondientes a los atributos. Así, la primera tupla de la tabla es la siguiente:

a1 b1 c1 d1

Otros conceptos asociados a la estructura de una relación son los siguientes:

  • Cuerpo. Es el conjunto de tuplas, el conjunto de todas las filas de la tabla (exceptuando la cabecera).
  • Cardinalidad. Es la cantidad total de tuplas de la relación.
  • Grado. Es la cantidad total de atributos.
 
De esta forma, la relación R tiene un grado igual a 4 y una cardinalidad igual a 'n'.