Está en la página 1de 30

El Modelo Relacional.

John Freddy Duitama Muñoz.

Facultad de Ingeniería.
U. de. A.

1
Que es un modelo de datos?

DEF 1: Abstracción de la información presente en el mundo


real, compuesta de tres elementos:
1. Estructura de Datos
2. Reglas de integridad
3. Operaciones posibles sobre los datos.

DEF 2: Herramientas conceptuales para describir datos, sus


relaciones, su semántica y las restricciones que garanticen su
consistencia.

Modelo de datos relacional.


Propuesto por E.F. Codd. en 1970. “A Relational Model of Data
for Large Shared Data Bank”. Communication of the ACM.
13. num 6, pp. 377-387.

2
Modelos de Datos

1. Modelo de datos Relacional

2. Modelo Entidad relación

3. Modelo de datos basado en objetos.

4. Modelo semiestructurado

3
La noción matemática de una relación.
• Dominio: Conjunto de valores. El conjunto de los enteros, el
conjunto de fechas.

• El Producto cartesiano de los dominios D1 ,D2 , . . ., Dk.


Se denota como D1 x D2 x ... x Dk y es el conjunto de todas las
k-tuplas ordenadas (v1,v2,...,vk) tales que:
v1 está en D1, v2 en D2 y asi sucesivamente.

• Relación: Subconjunto del producto cartesiano de una lista de


dominios.

4
La noción de relación para un sistema de Bases de
Datos.
Retoma la noción matemática, pero elimina la necesidad de
mantener el mismo orden para los elementos pertenecientes a
una tupla y le adiciona un nombre a cada componente de la
tupla.
Relación ≡ tabla.

Empleados
Nombre
Cédula Nombre
Juan
1 Luz
Luis
2 Luz
Luz
4 Juan
1 2 3 4 Cédula 3 Luis

5
1. Estructura de Datos relacional.

Relación ≡ tabla. Empleados


En donde: Cédula Nombre
• Cada fila es una tupla.
1 Luz
• Cada columna es una componente
de la tupla. 2 Luz
4 Juan
3 Luis
• Atributo: Nombre asignado a cada columna de la tabla, por ello su
orden deja de tener importancia.
Cada atributo está referido a un dominio de donde toma un único
valor para cada tupla que pertenezca a la relación.
• Dominio: Conjunto de valores escalares del mismo tipo.

6
1. Estructura de Datos relacional.
• Esquema: El conjunto de atributos de una relación y su dominio.
Esquema-Empleado(cedula:numérica, nombre:cadena-alfabética)

• Relación: empleados(Esquema-Empleado)

• Instancia: Las tuplas que contenga en determinado momento la


relación.

• Cardinalidad: Número de tuplas que en un instante dado tenga


una relación. Asumimos la relación como finita.

• Grado : Una relación, subconjunto del producto cartesianos D1 x


D2 x ... x Dk , decimos que tiene aridad k ó grado k; si la tupla
(v1,v2,...,vk) tiene k componentes.

7
2. Reglas de integridad relacional.

2.1. Información Faltante.


• En el mundo real no siempre dispongo de toda la información para
cada una de las tuplas de una relación. Eje. El teléfono del
empleado.

• Debe ser posible entonces para cada atributo de una relación,


excepto para la clave primaria, decidir cuando admite ó no
información faltante ó nula.

• Valores nulos se asimilan a información desconocida.

• En atributos numéricos la evaluación de un valor nulo es diferente a


la evaluación de un valor cero.

• En expresiones booleanas hay tres posibles respuestas: Verdadero,


falso y desconocido.

John Freddy Duitama. Universidad de Antioquia 8


2. Reglas de integridad relacional.
• Clave candidata: El atributo K (posiblemente compuesto) de la
relación R, es una clave candidata de esta relación si y solo si
satisface las siguientes dos propiedades independientes del
tiempo:
• Unicidad: En cualquier momento dado no existen dos tuplas en
R con el mismos valor de K.
• Minimalidad: Si K es compuesto, no será posible eliminar
ninguna componente de K sin destruir la propiedad de
unicidad.

2.2. Regla de las claves primarias.


• Toda relación debe poseer una clave primaria. Atributo tomado
del conjunto de atributos que son claves candidatas.
• Ningún componente de la clave primaria de una relación puede
aceptar valores nulos ó desconocidos.

9
2. Reglas de integridad relacional. (cont)

2.3. Regla de las claves foráneas.

Una clave foránea es un atributo (quizá compuesto) de una


relación R2 cuyos valores deben en todo momento del tiempo:

• concordar con los de la clave primaria de alguna relación R1.


(donde R1 y R2 no necesariamente son dos relaciones
distintas).
• O ser nulos.

Notas:
Si la clave foránea es compuesta sus valores deben ser
completamente nulos ó no ser nula en ninguno de sus
componentes.

10
2. Reglas de integridad relacional.
Empleados
Cédula Nombre Departamento
Clave Primaria:Código
1 Luz 10
2 Luz 20
4 Juan
3 Luis 20 Departamentos
Codigo Nombre
10 Contabilidad
empleados.departamento
Clave Foránea del atributo 20 Sistemas
departamentos.codigo 40 Ventas
30 Bodegas
Clave primaria: Cédula.
Qué hacer con las operaciones que intenten violar las reglas?

11
3. Operaciones en el modelo de datos relacional.
El Álgebra Relacional.

• Se apoya en operadores especializados sobre las relaciones.


• Es un álgebra cerrada. EL resultado de las operaciones definidas
sobre las relaciones son a su vez nuevas relaciones.
• Opera únicamente sobre el modelo de datos, no requiere saber
nada acerca de la estructura física de los datos.
• Provee un lenguaje lo suficientemente rico para hacer útil al
sistema de Bases de Datos.
• Requiere de un esquema de optimización de operaciones para
alcanzar respuestas rápidas.

12
Operaciones básicas: Unión.

• Unión ( R U S ). La unión de las relaciones R y S es el conjunto


de tuplas que están en R, en S ó en ambas relaciones.

Compatibilidad respecto a la unión : deben cumplirse dos


condiciones para hacerla efectiva en el álgebra relacional:
• Ambas relaciones deben tener el mismo conjunto de nombres
de atributos y definidos en el mismo orden.
• Los atributos correspondientes deben estar definidos sobre el
mismo dominio.

Solo deja una ocurrencia de las tuplas resultantes repetidas.


Solo deja una ocurrencia de tuplas con valores nulos en todos sus
atributos.

13
Operaciones básicas: Diferencia.

Compatibilidad respecto a la unión : deben cumplirse dos


condiciones para hacerla efectiva en el álgebra relacional:
• Ambas relaciones deben tener el mismo conjunto de nombres
de atributos y definidos en el mismo orden.
• Los atributos correspondientes deben estar definidos sobre el
mismo dominio.

• Diferencia ( R - S ). Es el conjunto de tuplas que están en R


pero no están es S.
Ambas relaciones requiere compatibilidad respecto a la unión.
Solo deja una ocurrencia de tuplas con valores nulos en todos
sus atributos.

14
Operaciones básicas: Producto Cruz.

• Producto cartesiano ( R x S ):
Sean R y S dos relaciones de cardinalidad c1 y c2
respectivamente.
Su producto cartesiano: conjunto de todas las posibles tuplas
construidas combinando una tupla de R con una tupla de S.
Se obtiener una relación con
Esquema-RxS ( Esquema-R Unión Esquema-S ).
Su cardinalidad será c1 multiplicado por c2

Si R y S tienen atributos comunes, deben renombrarse.


Solo deja una ocurrencia de tuplas con valores nulos en todos
sus atributos.
15
Operaciones básicas: Renombrar

•Renombrar x( E ) ( R x S ):
Sean E un expresión del álgebra relacional
ρ x
(E)
Eje:
ρ trabajador
( Empleado )

ρ empleado.fecha_naicmiento
( Empleado.fecha )

John Freddy Duitama. Universidad de Antioquia 16


Operaciones básicas: Proyección.

• Proyección : Denotada por

Sea R una relación de aridad k.

La proyección consiste en tomar un subconjunto de n atributos,


dentro de los k posibles, y construir una nueva relación.

Se deja sólo una ocurrencia de las tuplas resultantes repetidas.


Solo deja una ocurrencia de tuplas con valores nulos en todos sus
atributos.

17
Operaciones básicas: Selección

Selección: Denotada por


F es una fórmula que involucra:
• Operandos constantes y/o atributos de R.
• Operadores de comparación aritmética < , <= , >, >=, = , y < >.
Permite operadores de conjuntos si la condición incluye subconsultas.
• Operadores lógicos. and , or , not.
• Operador para valores nulos. Is null.

F retorna el valor de Verdadero, falso o desconocido.

La selección : Conjunto de todas las tuplas t pertenecientes a R para


las que la fórmula F es verdadera. Se conserva el esquema de R.
Las tuplas con un atributo en F nulo retornan desconocido.

18
Operaciones adicionales: Intersección
Definidas a partir de las operaciones básicas para facilidad de
los usuarios.

• Intersección : Denotada por R ∩ S .

• R y S Deben ser compatibles respecto a la unión.


• La relación resultante tiene un esquema idéntico al de R ó al
de S.
• Su cuerpo está formado por todas las tuplas t pertenecientes
tanto a R como a S.
• Es equivalente a la expresión: R- (R - S).

John Freddy Duitama.


19
Universidad de Antioquia
Operaciones adicionales: División
• División ( R ÷ S ): Sean R y S relaciones de aridad r y s
respectivamente, donde r > s y S ≠ Φ.
El cociente es el conjunto de tuplas de aridad (r – s),
a1 ,a2 , ... , a (r - s) (atributos no comunes entre R y S)
tales que:
Para toda tupla en S, existe en R la sub-tupla
a1, ... , a(r-s) acompañándola Ej:
R
W X Y Z S
A B C D
A B D E Y Z W X
÷ C D = A B
B C E F
E D C D E F E D
E D E F
A B E F
John Freddy Duitama.
20
Universidad de Antioquia
Operaciones adicionales: Ejemplos.
Empleados
Cédula Nombre Cargo cod_dependencia
1 Luz Secretaria 10
2 Luz Secretaria 20
4 Juan Auxiliar 10
3 Luis Analista 20

Departamentos
cod_dependencia Nombre
10 Contabilidad
20 Sistemas
40 Ventas
30 Bodegas
John Freddy Duitama.
21
Universidad de Antioquia
Operaciones adicionales del álgebra: Ejemplos

Ejemplos:
1. Hallar nombre y cargo de empleados del departamento 10.

2. Hallar el código de los departamentos sin empleados.

3. Hallar el código de los departamentos que no tienen auxiliar.

4. Hallar los cargos que aparecen en todos los departamentos.

5. Hallar los Cargos que aparecen en todos los departamentos que


tengan al menos un empleado.

6. Nombre de los empleados y nombre del departamento en donde


trabajan.

22
Operaciones adicionales: Reunión- θ
• Reunión- θ : Denotada por R S
F
Donde F es una fórmula que involucra:
• Atributos de R y S.
• Operadores de comparación aritmética < , <= , >, >=, = , y
<>.
• Operadores lógicos. and , or , not.

La reunión-θ de R y S, es una relación :


Con esquema : Esquema-R Union Esquema-S.
Con un cuerpo: formado por el conjunto de todas las tuplas t
tales que pertenezcan al producto cruz de R x S y la evaluación
de la fórmula F sea verdadera para esas tuplas.

Si el operador usado en F es el = se le llama equireunion.

23
Operaciones adicionales: Reunión natural
• Reunión natural : Denotada por R S.
F
Sean las Relaciónes R( x1, x2, ...,xm, y1, y2, ..., yn ) y
S( y1, y2, ..., yn , z1, z2, ..., zp );

Los atributos y1,y2,...,yn son comunes a ambas relaciones y además, los


atributos correspondientes están definidos sobre el mismo dominio.
La reunión natural de R y S es una relación:
Con esquema = ( x1, x2, ... ,xm, y1, y2,..., yn , z1, z2 , ... , zp )
y tuplas formadas por:
Una tupla t1 que aparece en R con los valores xi e yi correspondientes.
Una tupla t2 que aparece en S con los valores yi y zi correspondientes.
Los atributos yi de ambas tuplas tienen el mismo valor.

24
Operaciones adicionales: Reunión natural. (cont)
• Reunión natural : Denotada por R S.
F
Definida en términos de operaciones básicas:
Sean las Relaciónes
R( x1,x2,...,xm,y1,y2,...,yn ) y
S( y1,y2,...,yn ,z1,z2,...,zp );
Los atributos y1,y2,...,yn son comunes a ambas relaciones y
además los atributos correspondientes están definidos sobre el
mismo dominio.
Entonces:
R S = π x1,..,xm,y1,...,yn,z1,...,zp ( σ R.y1= S.y1 and (R x S) )
F
R.y2= S.y2 and ..................

R.yn = S.yn

John Freddy Duitama.


25
Universidad de Antioquia
Operaciones adicionales del álgebra relacional.
1. Reunión natural entre Empleados y Departamentos.

Cédula e.Nombre Cargo Dependencia


Dependencia d.Nombre

1 Luz Secretaria 10
10 Contabilidad
2 Luz Secretaria 20
20 Sistemas
4 Juan Auxiliar 10
10 Contabilidad
3 Luis Analista 20
20 Sistemas

2. Obtener el nombre del departamento donde trabaja cada


empleado.
(Empleados Departamentos)
empleado.cod_dependencia = departamento.cod_dependencia

26
Algebra extendida: Reunión externa

• Reunión- externa por la izquierda:


Denotada por R S
F
La reunión-externa de R y S, es una relación que trabaja con
los atributos faltantes.

Con esquema : Idéntico a la reunión natural.

Con un cuerpo: formado por el conjunto de todas las tuplas t


tales que pertenezcan a la reunión natural de ambas relaciones.
Además, retorna las tuplas en R que no coinciden con ninguna
tupla de S.

John Freddy Duitama.


27
Universidad de Antioquia
Algebra extendida: Reunión externa
Reunión externa por la derecha entre

empleados alias e departamentos alias d


empleado.cod_dependencia = departamento.cod_dependencia

Cédula e.Nombre Cargo Dependencia


Dependencia d.Nombre

1 Luz Secretaria 10
10 Contabilidad
2 Luz Secretaria 20
20 Sistemas
4 Juan Auxiliar 10
10 Contabilidad
3 Luis Analista 20 Sistemas
40 Ventas
20
30 Bodega

John Freddy Duitama.


28
Universidad de Antioquia
Anotaciones complementarias.
• Una Base de datos relacional es una Base de Datos percibida por el
usuario como un conjunto de relaciones, léase tablas normalizadas y
de diverso grado.

• Las ideas del modelo se aplican al nivel externo y conceptual del


sistema.

• Información faltante: En el mundo real no siempre dispongo de toda


la información para cada una de las tuplas de una relación. Debe ser
posible entonces para cada atributo de una relación, excepto para la
clave primaria, decidir cuando admite ó no información faltante ó
nula.

29
El modelo de datos Objeto-Relacional

Modelo Relacional: Atributos no anidados, solo admite valores


atómicos

Modelo Objeto Relacional


• Extiende el modelo relacional incluye orientación a objetos y
primitivas para manejar tipos de de datos definidos por el usuario.
• Permite que los atributos de las tuplas tengan tipos completos, que
incluyen valores no atómicos tales como relaciones anidadas.
• Preserva los fundamentos de la teoría relacional, el acceso con un
lenguaje de consulta declarativo pero extiende la potencia del
modelo de datos.
• Es compatible con el modelo relacional existente.

30

También podría gustarte