El modelo relacional de base de datos surge a finales de los sesenta; no obstante, es hoy en día el modelo más utilizado en sistemas empresariales. Los principales manejadores o sistemas de bases de datos comerciales o de software libre están basados en este modelo y brindan soluciones tecnológicas robustas para todo tipo de empresas. Dicho modelo fue desarrollado a finales de 1968 por Edgar F. Cood, matemático e investigador de IBM, quien propuso el uso de las matemáticas para dar cierto rigor al campo de las bases de datos. Codd publicó sus ideas en un artículo que hoy es clásico: “A relational model of data for large shared data banks” (1970). En ese artículo y subsiguientes, Codd presenta los conceptos fundamentales del modelo y sus beneficios frente a la tecnología de ese tiempo. De esta forma, los investigadores en computación comenzaron a proponer nuevas opciones de almacenamiento y surgieron los primeros modelos de bases de datos. Son básicamente dos modelos los antecesores del modelo relacional de base de datos. Ambos están basados en una estructura de nodos interconectados que almacenan la información.
Al terminar, podrás realizar dos actividades de aprendizaje y una autoevaluación para verificar tus conocimientos adquiridos y si lo requieres, puedes revisar nuevamente la información y realizar las actividades para obtener un mejor desempeño de esta temática.
(s. a.) (s. f.). Ejemplo de un diagrama entidad-relación [gráfico].
Fueron desarrollados con el objetivo de facilitar la gestión de datos simples, los cuales se volvieron complejos, trayendo como consecuencia que no se pudieran gestionar fácilmente. A continuación, se describirán dos de los modelos prerrelacionales que fueron más utilizados.
Modelo jerárquico
Este modelo interconecta nodos en una jerarquía estricta de “padre e hijos”, donde no puede haber relación entre nodos de distinto o del mismo nivel. Este modelo fue útil hasta que se empleó para resolver problemas de almacenamiento más complejos. La interconexión de nodos y, por consiguiente, el uso de apuntadores, comenzó a ser un inconveniente difícil de manejar por los sistemas de aplicación. El otro problema principal de este modelo es que no puede implementar relaciones de “muchos a muchos” entre instancias de entidades del mundo real.
(s. a.) (s. f.). Ejemplo de modelo jerárquico [gráfico].
Modelo de red
El segundo modelo es el de red. Se trata de una interconexión de nodos mediante apuntadores, sin la restricción del jerárquico; es decir, pueden salir de cada nodo varios arcos apuntando a otros nodos. A diferencia del modelo jerárquico, en este modelo se permiten las conexiones entre nodos de cualquier tipo, por lo que resulta bueno para relaciones “muchos a muchos”. Su principal desventaja radica en los problemas de implementación para lograr un rendimiento óptimo.
(s. a.) (s. f.). Ejemplo de modelo de red [gráfico].
Surgen de la necesidad de gestionar datos más complejos y que reflejen la realidad. Además del uso de big data y de data warehouse , los modelos posrelacionales más conocidos son:
• Orientado a objetos
• Distribuido
• Deductivo
• Multidimensional
• Semiestructurado
El modelo orientado a objetos almacena y manipula información que puede ser presentada como objetos; las llamadas bases de datos orientadas a objetos (BDOO) pueden manejar herencia, polimorfismo y encapsulamiento.
(s. a.) (s. f.). Modelos posrelacionales [gráfico].
El modelo distribuido está basado en el modelo relacional o en el orientado a objetos; su principal característica es que la base de datos está fragmentada en una red. Así, partes de las tablas de usuarios se encuentran en distintos sitios, ya sea a nivel horizontal —renglones— o vertical —columnas—. Uno de los retos principales de estos manejadores es que deben presentar la información al usuario como si las tablas estuvieran almacenadas localmente.
(s. a.) (s. f.). Modelos posrelacionales [gráfico].
El modelo deductivo se apoya en un conjunto de datos y reglas de inferencia. Es conocido también como modelo inferencial o basado en la lógica. Las consultas de datos en este modelo son demostraciones de axiomas deductivos. El objetivo primordial de este tipo de bases es inferir ciertos datos a partir de las reglas.
(s. a.) (s. f.). Modelos posrelacionales [gráfico].
Las bases de datos multidimensionales son llamadas así porque los datos están almacenados en arreglos multidimensionales. Estos arreglos pueden ser interpretados en términos de variables dependientes e independientes. Las últimas determinan las dimensiones sobre las que se guardan valores —variable dependiente—. Este modelo forma parte de los sistemas conocidos como procesamiento analítico en línea multidimensional (MOLAP, por sus siglas en inglés) que tienen por objeto la generación de informes analíticos de datos.
(s. a.) (s. f.). Modelos posrelacionales [gráfico].
Por último, el modelo semiestructurado surge ante la necesidad de que cada elemento almacenado cuente con un conjunto de atributos propio, sin necesidad de que este conjunto sea obligatorio como sucede en el modelo relacional. Este tipo de bases de datos se crea con el lenguaje de marcado extensible XML.
(s. a.) (s. f.). Modelos posrelacionales [gráfico].
El modelo relacional de bases de datos es llamado así porque se fundamenta en estructuras de almacenamiento de datos llamadas relaciones.
Juvalen. (2013). Ejemplo de tablas y relaciones [ilustración]. Tomada de https://es.wikipedia.org/wiki/Archivo:Tablas_y_estructura_relacional.png
Características
Las dos características fundamentales del modelo relacional de bases de datos son:
1. Los datos son percibidos por el usuario como relaciones y nada más que relaciones.
2. Para consultar los datos, el usuario cuenta con operadores que generan nuevas relaciones a partir de otras —álgebra relacional—.
Partes
El modelo relacional se fundamenta en una teoría abstracta de datos que toma ciertos aspectos de las matemáticas —teoría de conjuntos y lógica de predicados—. De esta manera, podemos definir una relación como un conjunto de tuplas y atributos que se compone de dos partes: encabezado y cuerpo.
El encabezado de una relación denota un cierto predicado o función valuada como verdadera. Por su parte, cada fila en el cuerpo denota una cierta proposición verdadera obtenida del predicado por medio de la sustitución de ciertos valores, del tipo apropiado, en los indicadores de posición o parámetros de ese predicado. En otras palabras, podemos decir que el cuerpo es un conjunto de instancias o ejemplos del predicado.
Predicado
El empleado NUMEMP se llama NOMBRE_EMP, trabaja en el departamento NUMDEPTO y gana un salario SALARIO_EMP. Las proposiciones verdaderas obtenidas del predicado son las siguientes:
• El empleado E1 se llama Azucena López, trabaja en el departamento D1 y gana el salario 20 000.
• El empleado E2 se llama Alberto Juárez, trabaja en el departamento D1 y gana el salario 8000.
Si representamos gráficamente lo anterior tendríamos una relación como la siguiente:
NUMEMP | NOMBRE_EMP | NUMDEPTO | SALARIO_EMP |
E1 | Azucena López | D1 | 20 000 |
E2 | Alberto Juárez | D1 | 8 000 |
(s. a.) (s. f.). Relación obtenida a partir del predicado [tabla].
Ahora bien, desde la perspectiva de la teoría de conjuntos, el encabezado es un conjunto de n atributos necesariamente distintos de la forma NombredeAtributo:NombredeTipo. En el cuerpo 1, el número de atributos de una relación se conoce como grado y el número de tuplas como cardinalidad.
Actividad 1. Definición, características y partes del modelo relacional de base de datos
Identificar el concepto y partes de una relación resulta útil para poder crear ésta en una base de datos. Por ello, en la siguiente actividad, deberás relacionar el concepto y partes de una relación con sus definiciones correspondientes.
Arrastra el nombre, características y partes del modelo relacional hacia al espacio que completa cada una de sus definiciones.
Una relación debe contar con cuatro propiedades que son:
La siguiente no es una relación, debido a que el atributo DEPARTAMENTO no guarda valores atómicos:
NÚMERO | NOMBRES | APELLIDOS |
1 | Arturo | Jiménez |
1 | Arturo | Jiménez |
(s. a.) (s. f.). Ejemplo de “no relación”, por el número uno duplicado [tabla].
La siguiente no es una relación, debido a que el atributo DEPARTAMENTO no guarda valores atómicos:
NÚMEROS | NOMBRES | APELLIDOS | DEPARTAMENTO |
1 | Arturo | Jiménez | 01 Finanzas |
2 | Arturo | Jiménez | 02 Contabilidad |
(s. a.) (s. f.). Ejemplo de “no relación”, porque los datos del campo departamento no son atómicos [tabla].
En una relación, es posible encontrar tres tipos de claves:
Candidata | Principal | Foránea |
Es un atributo que identifica de manera única a cada tupla de una relación. Una relación puede tener varias claves candidatas y éstas pueden ser simples, formadas por un atributo o compuestas, cuando se forman por varios. A las últimas se les llama superclaves. | En este caso, a diferencia de las claves candidatas, sólo existe una por relación. También pueden ser superclaves. | Una clave foránea es un atributo que hace referencia a una clave principal en otra relación. Esta referencia implica que no pueda existir un valor en la clave foránea que no exista primero en la clave principal. |
(s. a.) (s. f.). Tipos de claves en una relación [tabla].
Actividad 2. Propiedades de una relación
Una relación cuenta con varias propiedades, las cuales resulta indispensable entenderlas para la creación en una base de datos. ¿Eres capaz de identificarlas?
Elige el nombre de la propiedad que corresponde con cada una de las descripciones incompletas.
Autoevaluación. Los diferentes modelos relacionales
Como revisaste en este tema, los modelos prerrelacionales presentaban algunas desventajas para el almacenamiento de datos, los cuales fueron resueltos con el modelo relacional. Existen modelos más modernos que el relacional, aunque no son tan utilizados en las organizaciones, ya que éste ha demostrado ser una herramienta que proporciona una forma sencilla de almacenar, actualizar y consultar un base de datos; sin embargo, resulta importante identificar las características de cada modelo como parte de los conocimientos básicos requeridos, para su aplicación a una base de datos.
Indica si las siguientes aseveraciones son falsas o verdaderas, según el tipo de modelo que se esté describiendo.