El Modelo Relacional



Descargar 18,17 Kb.
Fecha de conversión16.08.2017
Tamaño18,17 Kb.

El Modelo Relacional

  • 16/08/17
  • Francisco Moreno

Antecedentes

  • 16/08/17
  • Curso Bases de Datos
  • El artículo que inició todo:
  • Edgar Frank Codd, “A Relational Model of Data for Large Shared Data Banks”, 1970.
  • Modelo lógico basado en teoría de conjuntos: operaciones sobre conjuntos de datos.
  • Es sencillo comparado con otros modelos lógicos (red, jerárquico).

Introducción

  • 16/08/17
  • Curso Bases de Datos
  • Los datos se almacenan en relaciones.
  • El concepto de relación en el modelo relacional es diferente del concepto de relación en el modelo E-R.
  • Informalmente, en el modelo relacional:
  • relación = tabla
  • Se apoya en el álgebra y en el cálculo de relaciones
  • Originó los RDBMS (SGBD Relacionales).

Introducción

  • 16/08/17
  • Curso Bases de Datos
  • Modelo conceptual (E-R)
  • Transfor-mación
  • Modelo lógico (Relacional)
  • ERROR FRECUENTE:
  • CONFUNDIR LOS CONCEPTOS DEL MODELO E-R CON LOS DEL MODELO RELACIONAL.
  • Ej: el concepto de clave primaria no hace parte del modelo E-R

Ventajas

  • 16/08/17
  • Curso Bases de Datos
  • Separación clara del nivel lógico y el físico.
  • Sencillo y maduro.
  • Fácil modificación de datos y del esquema.
  • Operadores con gran poder de manipulación de los datos  álgebra y cálculo relacional
  • Fundamentación teórica sólida (teoría de conjuntos).
  • Compatibilidad y estandarización.

Ventajas

  • 16/08/17
  • Curso Bases de Datos
  • Garantiza la independencia de los datos.
  • Soportado por numerosos sistemas comerciales que garantizan conectividad con los lenguajes de programación más usados (Java, C#, PHP, Visual Basic, etc.)
  • Muy difundido: se consigue fácilmente apoyo técnico.

Desventajas

  • 16/08/17
  • Curso Bases de Datos
  • No incluye comportamiento a diferencia de los modelos objetual y objeto relacional.
  • Dificultad o imposibilidad para representar
    • reglas complejas de negocio
    • reglas de conocimiento (inferencia)*.
  • Dificultad para manejar herencia (se trata de simular).
  • Descompone un elemento de interés en varias tablas*.
  • El manejo de datos complejos (cf. con los atributos grupales y multivaluados del modelo conceptual semántico) podría llevar a diseños complejos.
  • * Por medio de vistas se puede suplir en parte este aspecto.
  • * Esto implica que hay que reconstruir el elemento de interés.

Elementos del modelo relacional

  • 16/08/17
  • Curso Bases de Datos
  • Relación (tabla):
    • Concepto abstracto. Estructura: filas (tuplas) y columnas (atributos).
    • Se pueden definir por comprensión y por extensión*:
      • Ej.: Por comprensión: Estudiante = {x | x (carné, nombre, teléfono) es estudiante de la Universidad Nacional de Colombia}
  • *Implica listar individualmente, los elementos de la relación.

Elementos del modelo relacional

  • 16/08/17
  • Curso Bases de Datos
  • Relación: Conjunto de tuplas
    • Propiedades:
      • Cada “celda” (intersección de una fila con una columna) es atómica* o univaluada.
      • Cada columna tiene un nombre único dentro de la relación.
      • Las columnas no tienen orden.
      • Las tuplas no tienen orden.
      • No hay tuplas repetidas.
  • * Desde el punto de vista del modelo, aunque es un concepto muy elusivo.

Las relaciones en:

  • 16/08/17
  • Curso Bases de Datos
  • Matemáticas
  • Modelo relacional
  • Sin restricciones en el tipo de valores.
  • Valores atómicos (de nuevo, el concepto “atómico” es muy elusivo).
  • Columnas sin nombre.
  • Columnas con nombre.
  • Distinción de columnas por su posición.
  • Distinción de columnas por su nombre.
  • Constantes en el tiempo.
  • Variables en el tiempo (aunque algunos autores diferencian entre relación y variable de relación (varrel)).

Elementos del modelo relacional

  • 16/08/17
  • Curso Bases de Datos
  • Tupla: Una relación es un conjunto de tuplas:
    • Cada instancia (fila o registro) de una relación.
    • Sirve para representar la instancia de una entidad del modelo E-R.
    • Cardinalidad o extensión de una relación: número de tuplas.

Elementos del modelo relacional

  • 16/08/17
  • Curso Bases de Datos
  • Atributo:
    • Cada campo o columna de una relación.
    • Grado o aridad de una relación: número de atributos.
    • El conjunto de atributos forman la cabecera de la relación.
    • Cada atributo está valuado o basado sobre un dominio.

Elementos del modelo relacional

  • 16/08/17
  • Curso Bases de Datos
  • Dominio:
    • Colección, lista de valores.
    • Un dominio es un tipo de datos.
    • Pueden valuar a varios atributos.
    • Una definición formal de relación:
    • Es el subconjunto del producto cartesiano de los dominios D1, D2, …, Dn. (no necesariamente diferentes): R  D1 D2 Dn

Claves (Keys)*

  • 16/08/17
  • Curso Bases de Datos
  • Clave candidata de una relación:
    • Atributo (puede ser compuesto) cuyos valores diferencian a una tupla de las demás.
    • Debe cumplir unicidad y minimalidad (irreducibilidad).
    • ¿Por qué toda relación tiene al menos una clave candidata?
    • *Algunos autores usan el término “llaves”.

Claves

  • 16/08/17
  • Curso Bases de Datos
  • Clave primaria de una relación:
    • Elegida a partir de las claves candidatas de la relación. Las no elegidas (si las hay) se denominan claves alternativas o secundarias.
    • Equivale al identificador único (#, |) del modelo E-R y al identificador único (ID) del modelo semántico.
  • ¡No confundir clave primaria (modelo relacional) e identificador único (modelo E-R y semántico)!

Claves

  • 16/08/17
  • Curso Bases de Datos
  • Regla de integridad de una clave primaria:
  • “Ningún componente de la clave primaria
  • acepta nulos”
  • ¿Qué son? Algunos autores ni siquiera los
  • consideran como parte del modelo relacional…

Claves

  • 16/08/17
  • Curso Bases de Datos
  • Clave foránea (ajena o externa):
    • Atributo (puede ser compuesto) en una relación R1 que referencia a la clave primaria (o alternativa) de una relación R2 (R1 y R2 no necesariamente diferentes).
    • Especifica de forma explícita la forma en que dos relaciones* se relacionan**.
  • * Relaciones en el sentido del modelo relacional.
  • ** Relacionan en el sentido del modelo E-R.

Claves

  • 16/08/17
  • Curso Bases de Datos
  • Regla de integridad referencial:
  • “Ningún componente de una clave foránea puede contener valores que no están presentes en la clave primaria (o alternativa) a la que referencia”.
  • ¿Puede una clave foránea aceptar nulos?
  • ¿Cómo es el dominio de una clave foránea con respecto al dominio de la clave primaria (o alternativa) a la que referencia?

Claves

  • 16/08/17
  • Curso Bases de Datos
  • ¿Qué sucede si se pretende borrar el valor al que referencia (“padre”) una clave foránea?
  • Posibles cursos (políticas) de acción:
  • - Cascada.
  • - Restringido.
  • - Nulificación (no siempre es posible ¿cuándo lo es?).
  • - Programada.
  • ¿Qué pasa si se actualiza el valor al que referencia (“padre”) una clave foránea?

Otros tipos de claves

  • 16/08/17
  • Curso Bases de Datos
  • Superclave.
  • Natural.
  • Inteligente.
  • Artificial o surrogada.
  • Solapadas.
  • 16/08/17
  • Curso Bases de Datos
  • Relacional formal
  • Informal
  • Sistema de archivos
  • Relación
  • Tabla
  • Archivo
  • Tupla
  • Fila
  • Registro
  • Atributo
  • Columna
  • Campo
  • Instancia de una relación
  • Conjunto de filas de una tabla
  • Cardinalidad
  • Número de filas
  • Número de registros
  • Grado o aridad
  • Número de columnas
  • Número de campos
  • Clave primaria
  • Llave, identificador
  • Sin equivalente
  • Clave foránea
  • Sin equivalente
  • Dominio
  • Conjunto de valores válidos
  • Conjunto de valores válidos
  • Comparativo de términos

Una relación CURSO:

  • 16/08/17
  • Curso Bases de Datos
  • código
  • nombre
  • profesor
  • hora
  • semestre
  • 667
  • BD 1
  • Megan Fox
  • MJ 6-8
  • 2011-1
  • 201
  • BD 2
  • Megan Fox
  • WV 6-8
  • 2011-1
  • 333
  • Álgebra en chino
  • Björk López
  • WV 2-4
  • 2010-2
  • 666
  • BD 1
  • Angelina
  • Demonia
  • S 8-12
  • 2010-2
  • Cabecera
  • CP
  • Tuplas
  • Cardinalidad: 4
  • Grado: 5
  • Cuerpo

En la relación anterior, ¿hay claves alternativas?

  • 16/08/17
  • Curso Bases de Datos
  • En la relación anterior, ¿hay claves alternativas?
  • ¿Qué pasaría si hubiese dos profesores con el mismo nombre y apellido? Ej. Dos Megan Fox  Colocar mejor el número de identificación del profesor en CURSO y en otra relación cada profesor con sus atributos (identificación, nombre, etc.)

Relación CURSO:

  • 16/08/17
  • Curso Bases de Datos
  • código
  • nombre
  • car_prof
  • hora
  • semestre
  • identificación
  • nombre
  • CP
  • CP
  • Relación
  • PROFESOR:
  • Clave foránea hacia PROFESOR
  • 667
  • BD 1
  • 1
  • MJ 6-8
  • 2011-1
  • 201
  • BD 2
  • 1
  • WV 6-8
  • 2011-1
  • 1
  • Megan Fox
  • 2
  • Björk López



Compartir con tus amigos:


La base de datos está protegida por derechos de autor ©absta.info 2019
enviar mensaje

    Página principal