1 / 69

Unidad III (antes Unidad 4)

Unidad III (antes Unidad 4). Modelo Relacional. Características Generales. Posee un sólido fundamento teórico Introducido en 1970 por Codd Basado en una estructura simple y uniforme Describe principios básicos. Características Generales (Cont). Modelo Auto. 4 ruedas asientos

Download Presentation

Unidad III (antes Unidad 4)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Unidad III (antes Unidad 4) Modelo Relacional

  2. Características Generales • Posee un sólido fundamento teórico • Introducido en 1970 por Codd • Basado en una estructura simple y uniforme • Describe principios básicos

  3. Características Generales (Cont) Modelo Auto • 4 ruedas • asientos • se traslada • etc. Característicasesenciales, imprescindibles

  4. Características Generales (Cont) iguales en cuanto a sus propiedades fundamentales autos diferentes de fabricantes diferentes

  5. Modelo Relacional • Estructura • Integridad • Manipulación Modelo Relacional

  6. Modelo Relacional Estructura Forma en la que se almacenan los datos

  7. Estructura colección de relaciones base de datos relacional informalmente tablas archivos simples

  8. Estructura Terminología: Tablas tabla columnas filas

  9. Estructura Terminología: Archivos archivo campos registros

  10. Estructura Relación • Única estructura del modelo • Estructura elemental, no descomponible, atómica

  11. Estructura: Gráficamente dominios Direcciones Edades Nombres Dni atributos tuplas relación

  12. Estructura: Dominios Un dominio D es un conjunto de valores atómicos válidos Un dominio, en general, tendrá: • Nombre • Tipo de datos • Formato • Información adicional (ejemplo, unidad de medida)

  13. Estructura: Dominios Ejemplos: • Nros_tel_Argentina • Def. lógica: Conjunto de nros. tel. válidos de xxx dígitos de Argentina. • Tipo de dato/Formato: Cadena de caracteres de la forma (ddd)dddd, donde cada d representa a un dígito decimal, y los 3 primeros forman el código de área. • Pesos_pacientes • Def. lógica: Pesos posibles de los pacientes de un médico pediatra, oscilan entre 0,500 y 60 (por ejemplo). • Tipo de dato/Formato: Número real entre 0,500 y 60. • Unidad de medida: Kilogramo • Promedios_notas: Valores posibles de los promedios de notas, cada uno será un valor real entre 0 y 10. • Edades_alumnos: Edades posibles de los alumnos de la facultad, oscilan entre 17 y 50 (por ejemplo). • Estados_civiles_empleados: Valores posibles para el estado civil de un empleado, a saber: soltero, casado, separado, viudo. • Estados_civiles_alumnos: Valor posible para el estado civil de un alumno de una escuela primaria, a saber: soltero.

  14. Estructura: Dominios Complejidad del concepto de dominios: • Definir el conjunto de todos los dominios posibles • Definir las operaciones unarias y binarias válidas • Para cada operación válida definida, identificar el dominio resultante

  15. Estructura: Esquema de Relación / Intensión de una Relación Un esquema de relación se compone de: • Nombre • Lista de atributos Denotado: R(A1, A2, A3, …, An) grado (Cantidad de atributos) nombre

  16. Estructura: Esquema de Relación / Intensión de una Relación R(A1, A2, A3, …, An) Cada Ai es el nombre del rol que desempeña algún dominio D en el esquema de relación R El dominio D de Ai, se denota dom(Ai) Cada dom(Ai) no son necesariamente distintos Ejemplo de dominios: dom(tel_alum)= Nros_tel_Argentina Donde Nros_tel_Argentina es un dominio previamente definido

  17. Estructura: Relación / Estado de Relación / Extensión Una relación r del esquema de relación R(A1, A2, A3, …, An) denotado por r(R)es un conjunto finito de transformaciones* r = {t1,t2, …, tm} Donde: • Cada tupla ties una transformación de R en D • D es la unión de todos los dominios de los atributos • Por lo tanto, t[Ai] debe estar en dom(Ai) con 1≤i≤n para cada transformación t en r * Transformación = Función

  18. Estructura: Relación / Estado de Relación / Extensión Donde: • Cada t[Ai] es un elemento de dom(Ai)o bien un valor nulo • El i-ésimo valor de la tupla t que corresponde al atributo Ai, se denota t[Ai] • Entonces, cada tupla se considera como un conjunto de pares (atributo, valor) ti = {(A3,vi3), (A1,vi1), (Am,vim), …} • Por lo tanto, puesto que ya vimos que r = {t1,t2, …, tm} entonces r es un conjunto de conjuntos * Transformación = Función

  19. Estructura: Relación / Estado de Relación / Extensión Una relación también puede definirse: r(R) es una relación matemática de grado n sobre los dominios dom(A1), dom(A2), …, dom(An) Subconjunto del producto cartesiano de los dominios de R r(R) c (dom(A1) x dom(A2)x … x dom(An))

  20. Estructura: Relación / Estado de Relación / Extensión r(R) c (dom(A1) x dom(A2)x … x dom(An)) El producto cartesiano corresponde a todas las combinaciones posibles de los valores de los dominios subyacentes El estado actual de la relación r refleja solamente las tuplas válidas que representan un estado específico del mundo real

  21. Estructura: Características de las Relaciones • Las tuplas de una relación no están ordenadas • Los atributos de una tupla no están ordenados • Cada valor en una tupla es un valor atómico • No existen tuplas repetidas (clave primaria)

  22. Modelo Relacional • Estructura • Integridad • Manipulación Modelo Relacional

  23. Integridad Concepto Integridad: Refiere a la correctitud de los datos Las restricciones contribuyen a mantenerla

  24. Definidas dentro del modelo relacional Integridad Restricciones de integridad Restricciones específicas de una base de datos Restricciones generales aplicables a cualquier base de datos

  25. Integridad Las restricciones del modelo relacional son: • De dominio • De clave • De no nulo • De integridad de entidades • De integridad referencial Relaciones individuales Base de datos (Varias relaciones)

  26. Integridad Restricciones dominio(Sobre relaciones individuales): Especifican que el valor de cada atributo Ai debe ser un valor atómico del dominio dom(Ai )

  27. Integridad Restricciones de clave (Sobre relaciones individuales): Una relación está definida como un conjunto de tuplas No pueden existir tuplas repetidas Siempre existirá un subconjunto de atributos SC que satisfacerá, en todo estado de la relación, para cualquier par de tuplas i j: Ti[SC] ≠ Tj[SC] Toda superclave especifica una restricción de unicidad superclave

  28. Integridad Restricciones de nulo (Sobre relaciones individuales): Para cada atributo se puede especificar si permite o no valores nulos

  29. Integridad Restricciones aplicadas a bases de datos Un esquema de base de datos relacional S es: • Un conjunto de esquemas de relaciones S={R1, R2, …, Rm} • Un conjunto de restricciones RI de integridad

  30. Integridad Restricciones aplicadas a bases de datos Un estado de base de datos relacional BD de S es un conjunto de estados de relaciones BD={r1, r2, …, rm} tal que: • Cada ri es un estado de Ri • Todo ri satisface las restricciones de integridad especificadas en RI

  31. Integridad Restricción de integridad de entidades Ningún valor de clave primaria (CP) puede contener valores nulos

  32. Contiene la Regla de Integridad Referencial R1 Relación Referenciante R2 Relación Referenciada Integridad Restricción de integridad referencial Clave foránea (Rest.Int. entre los esquemas de relaciones R1 y R2, no necesariamente distintas ): Un conjunto de atributos CF del esquema de relación R1 es una clave foránea de R1 si satisface: • Los atributos de CF tienen el mismo dominio que los atributos de la CP del esquema de relación R2. • Todo valor de CF en una tupla ti ocurre como valor de CP en alguna tupla del estado actual de r2 o bien es totalmente nulo.

  33. Integridad Restricción de integridad referencial Clave foránea Relación Referenciante apunta Clave primaria Relación Referenciada

  34. Modelo Relacional • Estructura • Integridad • Manipulación Modelo Relacional

  35. Algebra Relacional Operadores del algebra se pueden clasificar Según la posibilidad de descomponerlos Según la cantidad de argumentos Según la pertenencia a la teoría de conjuntos Tradicionales Especiales Primitivos Derivados Unarios Binarios

  36. Algebra Relacional (Básica) Según la posibilidad de descomponerlos Según la cantidad de argumentos Según la pertenencia a la teoría de conjuntos • Unarios • Selección • Proyección • Binarios • Unión • Diferencia • Producto Cartesiano • Intersección • Join • División • Primitivos • Unión • Diferencia • Producto Cartesiano • Selección • Proyección • Derivados • Intersección • Join • División • Tradicionales • Unión • Intersección • Diferencia • Producto Cartesiano • Especiales • Selección • Proyección • Join • División

  37. Algebra Relacional Todos los operadores satisfacen la propiedad de clausura: Todo operador del álgebra toma como argumento/s esquemas de relaciones y devuelve también un esquema de relación Ninguna expresión del algebra puede generar tuplas repetidas Generar expresiones encadenadas o anidadas

  38. Algebra Relacional Secuencias de operaciones y operador renombrar: Es frecuente necesitar aplicar varios operadores uno tras otro Aplicar los operadores de a uno y crear resultados intermedios Anidar expresiones Nombrar las relaciones intermedias Temp Expresión

  39. R2 (nom_nuevo1, nom_nuevo2) R1 Algebra Relacional Secuencias de operaciones: Asignación No sólo permite darle nombre a una relación sino también cambiar el nombre de sus atributos • Donde: • R1 tiene atributos nombre1 y nombre 2 • nombre1 y nom_nuevo1 están definidos sobre el mismo dominio • idem para nombre2 y nom_nuevo2

  40. Algebra Relacional Operador renombrar No sólo permite renombrar el nombre de la relación sino también el nombre de sus atributos ρS(B1,B2, …, Bn) (R) Renombra la relación R y sus atributos ρS(R) o Renombra únicamente la relación ρ(B1,B2, …, Bn) (R) Renombra sólo los atributos • Donde: • R es el nombre de la relación original • S es el nuevo nombre de la relación • B1, B2, …, Bn son los nuevos nombres de los atributos. Si los atributos de R son (A1 ,A2, …, An) en ese orden, entonces cada Ai se renombra como Bi NOTA: En el caso que no necesiten ser renombrados todos los atributos, lo mismo se los debe mencionar a todos, y se colocan los mismos nombres, es decir, los viejos.

  41. Algebra Relacional

  42. Algebra Relacional Operador selección Comentarios: • La <condición de selección> es una expresión booleana que puede utilizar los operadores de comparación {<,>,=,≤,≥,≠}. Estos operadores se aplican a atributos cuyos dominios son valores ordenados (numéricos, fechas, cadenas de caracteres). Un ejemplo de dominio no ordenado es COLOR={rojo, verde, amarillo}. • Las cláusulas pueden conectarse con operadores booleanos • El operador selección es conmutativo: σ<cond1> (σ<cond2> (R)) = σ<cond2> (σ<cond1> (R)) • Siempre es posible reemplazar una cascada de selecciones en una sola: σ<cond1> (σ<cond2> (R)) = σ<cond1> and <cond2> (R)

  43. Algebra Relacional Comentarios: • La cantidad de tuplas de la relación resultante será menor o igual a la cantidad de tuplas de la relación R. • El operador de proyección no es conmutativo.

  44. Algebra Relacional • Algunas consideraciones importantes: • Relaciones Unión Compatibles o Compatibles con la Unión • Dos relaciones, R(A1, A2, …, An) y S(B1, B2, …, Bn), serán unión compatibles si tienen el mismo tipo de tuplas. Es decir, si ambas tienen grado n y si dom(Ai)=dom(Bi) para 1 ≤ i ≤ n. • Calificación de Atributos Los atributos de una relación R(A1, A2, …, An) pueden ser calificados colocando el nombre de la relación, luego un punto y por último el nombre del atributo, por ejemplo,R.A2.

  45. Algebra Relacional Comentarios: • La cantidad de tuplas de la relación resultante será menor o igual a la cantidad de tuplas de la relación R1 + la cantidad de tuplas deR2. • El operador union es conmutativo. * Los argumentos deben ser Unión Compatibles

  46. Algebra Relacional Comentarios: • El operador intersección es conmutativo. * Los argumentos deben ser Unión Compatibles

  47. Algebra Relacional Comentarios: • El operador diferencia no es conmutativo. * Los argumentos deben ser Unión Compatibles

  48. Algebra Relacional Comentarios: • El operador producto cartesiano es conmutativo.

  49. Algebra Relacional Comentarios: • La condición de reunión es de la forma <cond> y <cond> y …y <cond>. Donde cada <cond> tiene la forma Ai θ Bj. Ai y Bj pertenecen al mismo dominio y θ es un operador de comparación {=,<,>,≤,≥,≠}. Un join con una condición general como ésta, se denomina θ Join. • En particular, cuando la condición de reunión utiliza el operador de comparación =, el join es llamado equijoin.

  50. Algebra Relacional

More Related