Upload
others
View
21
Download
0
Embed Size (px)
Citation preview
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Índice• introducción
– ¿Qué es? ¿Para qué sirve? ¿Por qué me va a interesar?
• concepto de relación– La base del modelo, cómo funciona
• representación de objetos– La vida real desde el punto de vista relacional
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Índice (y 2)
• restricciones semánticas– Cómo se “comportan” los objetos, como se
relacionan entre ellos
• operadores– Necesitaré acceder a los datos, insertar nuevos,
borrar ...
• otras características– No son del modelo propiamente pero ...
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Modelo relacional, Bases de datos relacionales
– Tedd Codd - 1970
• Actualmente el más usado (transaccional)
• Estructura: la relación matemática (la tabla)
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Modelo relacional, Bases de datos relacionales
– Tedd Codd - 1970
• Actualmente el más usado (transaccional)
sencilloexpresivamente potentelenguaje de definición y manipulación de datos: SQL
– “menos difícil” que los lenguajes tradicionales (cobol, fortran, c ...)
• Estructura: la relación matemática (la tabla)
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Modelo relacional, Bases de datos relacionales
– Tedd Codd - 1970
• Actualmente el más usado (transaccional)
• Estructura: la relación matemática (la tabla)
tabla = { columnas } (clase de objetos)
columnas = clase de datofilas = datos (instancias de la clase de objetos)
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Mi base de datos: “MandoMuzik”• Cantantes, discos, año de
publicación ...• ¿Cómo la “guardo”?
¿Fichero secuencial, directo, aleatorio?¿Tabla hash ?¿Lista ordenada?¿Lista doblemente enlazada?¿Árboles B?¿Grafo con múltiples enlaces?
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Mi base de datos: “MandoMuzik”• ¿Cómo consulto mi BD?
¿Ordenado por autor, por álbum, por autor y álbum...?Sólo me interesa el etno-funk-progresivoCualquier cosa menos “triunfitos”, porfa
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
¿Y si hay algo que me lo da “casi todo” hecho?
Pues claro, los sistemas de gestión de bases de datos basados en...
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
el modelo el modelo relacionalrelacional
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
¿Y eso qué es?
Una forma de ver los datos, como tablas con filas y columnas (el sistema ya se encarga de almacenar los datos como buenamente pueda, no te preocupes), y que te muestra esos datos, simplemente, preguntando por lo que quieres saber...
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
autor título añoCORNELIUS Point 02UNDERWORLD A Hundred Days Off 02BOOM BOOM SATELLITES Out Loud 01FILTER The Amalgamut 03CATHY JEAN I Want 98PROPELLERHEADS Decksandrumsandrocandroll 98JANE'S ADDICTION Strays 03
La tabla Atributos(componentes)
Individuos(tuplas)
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Una consulta: selecciona “autor”, “título” de la tabla“música” donde“año”= 98
autor título añoCATHY JEAN I Want 98PROPELLERHEADS Decksandrumsandrocandroll 98
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Predecesores• modelo jerárquico• modelo red
¿Diferencias?• Estructuras de datos
Dificultad de representaciónConsultas de “experto”
1 21 PEPE ITIG 2 A
3 52 LUISA ITIS 2 C
2 23 ANA ITIG 2 A
1 21 PEPE ITIG 2 A3 52 LUISA ITIS 2 C2 23 ANA ITIG 2 A
estructura de registros
tabla
Alumno = {nº expediente, dni, nombre, titulación,
curso, grupo}
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
¿Porqué “gana” el modelo relacional?• Es sencillo
No tiene (al menos a la vista) punteros o similares
• Fuerte base matemática (conjuntos)
• Utiliza lenguajes de especificaciónSe pregunta por lo que se quiere conocer, no se navega por registros mediante punterosLos puede utilizar cualquiera con un mínimo de entrenamientoSQL fue el gran apoyo del MR
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
CONCEPTO DE RELACICONCEPTO DE RELACIÓÓNN
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
¿Estructuras de un modelo?• Son las “palabras” de este “lenguaje”• Conocer las estructuras es conocer el
“lenguaje” y poder “hablar”
• Las estructuras dictan cómo puedo representar la realidad
Cómo se combinan las “palabras” hasta representar conceptos complejos con los que poder comunicarnos con un SGBD y con otras personas
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
¿Estructura del modelo relacional?• La Relación Matemática, más conocida
como Relación o, más aún, como Tabla.
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Relación Matemática• Estructura del modelo relacional• Informalmente, tabla
• ¡La relación es un conjunto!
R R ⊆⊆ DD11 ×× DD22 ×× ......×× DDnn
Alumno ⊆ nº expediente ×dni × nombre × titulación, curso × grupo
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
DefinicionesDefiniciones
Dominio
Producto Cartesiano
Relación
Características de la relación
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
DefinicionesDefiniciones
Relación
• Producto CartesianoDominio
• Características de la relación
R R ⊆⊆ DD11 ×× DD22 ×× ......×× DDnn
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
DefinicionesDefiniciones
Relación
• Producto Cartesiano
Dominio
• Características de la relación
D1 × D2 × ...× Dn= { < d1, d2, ..., dn >
/ d1 ∈ D1, d2 ∈ D2, ..., dn ∈ Dn }
R R ⊆⊆ DD11 ×× DD22 ×× ......×× DDnn
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
DefinicionesDefiniciones
Relación
• Producto Cartesiano
Dominio
• Características de la relaciónDi ≈ “tipo de datos”
R R ⊆⊆ DD11 ×× DD22 ×× ......×× DDnn
D1 × D2 × ...× Dn= { < d1, d2, ..., dn >
/ d1 ∈ D1, d2 ∈ D2, ..., dn ∈ Dn }
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
DefinicionesDefiniciones
Relación
• Producto Cartesiano
Dominio
• Características de la relacióngrado: dominios Grado(R) = ncardinalidad: cantidad de tuplas (depende del instante en el que se “mire” la relación)
D1 × D2 × ...× Dn= { < d1, d2, ..., dn >
/ d1 ∈ D1, d2 ∈ D2, ..., dn ∈ Dn }
Di ≈ “tipo de datos”
R R ⊆⊆ DD11 ×× DD22 ×× ......×× DDnn
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
R ⊆ D1 × D2
D1 = { 1, 0 } D2 = { a, b, c }
D1 × D2 = {<1,a> <1,b> <1,c> <0,a> <0,b> <0,c>}
• Grado(R) = 2
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
R ⊆ D1 × D2
D1 = { 1, 0 } D2 = { a, b, c }
D1 × D2 = {<1,a> <1,b> <1,c> <0,a> <0,b> <0,c>}
• Grado(R) = 2
R = { <1,a> <1,b> <1,c> <0,a> }R = { <1,a> <1,b> <1,c> <0,a> }
• Cardinalidad(R) = 4
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
R ⊆ D1 × D2• R es es un conjunto
No contiene ni contendrá tuplas duplicadas– El producto nunca “produce” dos tuplas iguales
No existe orden entre las tuplas– En los conjuntos no hay relación de orden
Sí existe orden entre las componentes de las tuplas
– Se habla de la primera componente, de la segunda, de la última ...
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Esquema de la relación Alumnonº expediente ∈ domE { 1 .. 3000 }
dni ∈ domD { c / c es cadena(8) }
nombre ∈ domN { c / c es cadena(30) }
titulación ∈ domT { ‘II’, ‘ITIG’, ‘ITIS’ }
curso ∈ domC { 1, 2, 3, 4, 5 }
grupo ∈ domG { ‘A’ .. ‘Z’ }
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Esquema de la relación Alumno
Contenido
nº expediente ∈ domE { 1 .. 3000 }
dni ∈ domD { c / c es cadena(8) }
nombre ∈ domN { c / c es cadena(30) }
titulación ∈ domT { ‘II’, ‘ITIG’, ‘ITIS’ }
curso ∈ domC { 1, 2, 3, 4, 5 }
grupo ∈ domG { ‘A’ .. ‘Z’ }
1 PEPE ITIG 2 A
3 LUISA ITIS 2 C
2 ANA ITIG 2 A21
52
23
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
REPRESENTACIREPRESENTACIÓÓN DE N DE OBJETOSOBJETOS
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Representar un sistema de información
• Adaptación del concepto de relación matemática
– Hacer la relación matemática más útil y “amigable”
• Tabla o relación– Propiedades que sugiere la representación de la
relación y que no son ciertas
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Representar un sistema de información
• Usar la relación para aplicar los mecanismos de abstracción
clasificación, agregación, generalización
• … y las restricciones semánticasde dominio, de identificación, de correspondencia entre clases
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Adaptación del concepto de relación matemática
• No es cómodo acceder a las componentes de la tupla por su orden
– Se va a utilizar para almacenar y gestionar datos– debo saber que el nombre es la tercera
componente de cada tupla
Alumno ⊆ domE × domD × domN
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Adaptación del concepto de relación matemática
• Dar nombre a las componentesReferencia simbólica al dato representado en la tupla
Alumno ⊆ domE × domD × domN
Alumno = { <exp : domE> <dni : domD>
<nombre : domN>}
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Adaptación del concepto de relación matemática• Esquema (intensión)
• Contenido (extensión)
Alumno = { <exp:domE> <dni:domD> <nombre:domN> }
{{<exp : 3> <dni: 21333555> <nombre : LUISA> }
{ <nombre : PEPE> <dni: 22444666> <exp : 1> }
{<dni: 21777333> <exp : 2> <nombre : ANA> }}
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Adaptación del concepto de relación matemática• Definición de una relación en el MR
Esquema
Contenido (extensión de R)
Grado(R) = nCardinalidad(R) = m
R = { <Ai : Di> } i = 1, 2, .. n
R = { { <A1 : V11> .. <An : Vn1> }…
{ <A1 : V1j> .. <An : Vnj> } }j = 1, 2, .. m
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Percepción de la relación• El concepto matemático de relación
se representa (nosotros la vemos, se pinta en un papel...) como una tabla con filas y columnas
– los términos relación y tabla, coloquialmente, se utilizan indistintamente
tendemos a confundir la realidad física con el concepto que representa
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Percepción de la relacióntendemos a confundir la realidad física con el concepto que representa
autor título añoUNDERWORLD A Hundred Days Off 02CORNELIUS Point 01UNDERWORLD Beacoup Fish 98BLUE NILE,THE A Walk Across The Rooftop 83BOOM BOOM SATELLITES Out Loud 01SMASHING PUMPKINS Gish 91Varios ¿artistas? Operación Pastelazo
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
la tabla sugiere orden entre las filas
Percepción de la relacióntendemos a confundir la realidad física con el concepto que representa
autor título añoUNDERWORLD A Hundred Days Off 02CORNELIUS Point 01UNDERWORLD Beacoup Fish 98BLUE NILE,THE A Walk Across The Rooftop 83BOOM BOOM SATELLITES Out Loud 01SMASHING PUMPKINS Gish 91Varios ¿artistas? Operación Pastelazo
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
la tabla sugiere orden entre las filas
la tabla sugiere orden entre las columnas(lo que no es incorrecto del todo)
Percepción de la relacióntendemos a confundir la realidad física con el concepto que representa
autor título añoUNDERWORLD A Hundred Days Off 02CORNELIUS Point 01UNDERWORLD Beacoup Fish 98BLUE NILE,THE A Walk Across The Rooftop 83BOOM BOOM SATELLITES Out Loud 01SMASHING PUMPKINS Gish 91Varios ¿artistas? Operación Pastelazo
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
la tabla sugiere orden entre las filas
la tabla sugiere orden entre las columnas(lo que no es incorrecto del todo)
y, además, puedo duplicar filas si me da la gana
Percepción de la relacióntendemos a confundir la realidad física con el concepto que representa
autor título añoUNDERWORLD A Hundred Days Off 02CORNELIUS Point 01UNDERWORLD Beacoup Fish 98BLUE NILE,THE A Walk Across The Rooftop 83BOOM BOOM SATELLITES Out Loud 01SMASHING PUMPKINS Gish 91Varios ¿artistas? Operación Pastelazo
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
la tabla sugiere orden entre las filas
la tabla sugiere orden entre las columnas(lo que no es incorrecto del todo)
y, además, puedo duplicar filas si me da la gana
Percepción de la relacióntendemos a confundir la realidad física con el concepto que representa
autor título añoUNDERWORLD A Hundred Days Off 02CORNELIUS Point 01UNDERWORLD Beacoup Fish 98BLUE NILE,THE A Walk Across The Rooftop 83BOOM BOOM SATELLITES Out Loud 01SMASHING PUMPKINS Gish 91Varios ¿artistas? Operación Pastelazo
BD1 2006-07
Modelo Relacional
introducción
concepto de relación
representación de objetos
restricciones semánticas
operadores
otras características
Percepción de la relación
en todo caso, siempre se cumplirán las propiedades de la relación
– sugiera lo que sugiera la tabla, siempre tendremos en cuenta que es la estructura del MR
Término formalRELACIÓN
atributotupla
gradocardinalidad
Término informalTABLAcolumnafilacantidad de columnascantidad de filas
•••••