Modelo de datos relacional en sistemas de gestión de bases de datos: Concepts & Ejemplo

⚡ Resumen inteligente

El modelo relacional representa una base de datos como una colección de relaciones, donde cada relación es una tabla de filas y columnas. Define conceptos fundamentales, restricciones de integridad y operaciones de actualización que mantienen la coherencia y la facilidad de consulta de los datos relacionales.

  • 🗃️ Idea principal: Los datos se almacenan como relaciones, y cada fila es una tupla que describe una entidad o relación del mundo real.
  • 🏷️ Términos claves: El atributo, la tupla, el grado, la cardinalidad, el dominio y la clave de relación describen conjuntamente la estructura de una tabla.
  • 🛡️ Tres restricciones: Las restricciones de integridad de dominio, clave y referencial mantienen válida cada relación.
  • 🔑 Tablas de enlaces de claves: Una clave primaria identifica de forma única una fila, y una clave foránea hace referencia a una clave en otra relación.
  • 🔄 Las cuatro Operafunciones: Insertar, actualizar, eliminar y seleccionar acciones sobre relaciones sin infringir las restricciones definidas.
  • Reglas de diseño: Un valor por celda, nombres de columna únicos, sin filas duplicadas y valores extraídos de un solo dominio.
  • 📈 Por qué gana: Sencillez, independencia estructural, un lenguaje de consulta de alto nivel e independencia de datos.

Modelo de datos relacionales en DBMS

¿Qué es el modelo relacional?

Modelo Relacional (RM) Representa la base de datos como una colección de relaciones. Una relación no es más que una tabla de valores. Cada fila de la tabla representa una colección de valores de datos relacionados. Estas filas de la tabla indican una entidad o relación del mundo real.

El nombre de la tabla y los nombres de las columnas ayudan a interpretar el significado de los valores en cada fila. Los datos se representan como un conjunto de relaciones. En el modelo relacional, los datos se almacenan como tablas. Sin embargo, el almacenamiento físico de los datos es independiente de su organización lógica.

El modelo fue propuesto por EF Codd en 1970 y sigue siendo la base de casi todas las bases de datos principales que se utilizan hoy en día. Algunos sistemas populares de gestión de bases de datos relacionales son:

  • Servidor dinámico DB2 e Informix – IBM
  • Oracle y RDB – Oracle
  • Servidor SQL y acceso – Microsoft

Modelo relacional Concepts en DBMS

  1. Atributo: Cada columna de una tabla. Los atributos son las propiedades que definen una relación, por ejemplo, Student_Rollno, NAME, etc.
  2. Mesas: En el modelo relacional, las relaciones se guardan en formato de tabla. Se almacenan junto con sus entidades. Una tabla tiene dos propiedades: filas y columnas. Las filas representan registros y las columnas representan atributos.
  3. Tupla: No es más que una sola fila de una tabla, que contiene un solo registro.
  4. Esquema de relación: Un esquema de relación representa el nombre de la relación con sus atributos.
  5. Grado: El número total de atributos en una relación se denomina grado de la relación.
  6. Cardinalidad: El número total de filas presentes en la tabla.
  7. Columna: La columna representa el conjunto de valores para un atributo específico.
  8. Instancia de relación: Una instancia de relación es un conjunto finito de tuplas en el sistema de gestión de bases de datos relacionales (RDBMS). Las instancias de relación nunca tienen tuplas duplicadas.
  9. Clave de relación: Cada fila tiene uno, dos o varios atributos, lo que se denomina clave de relación.
  10. Dominio de atributo: Cada atributo tiene un valor y un alcance predefinidos, lo que se conoce como el dominio del atributo.

Conceptos de modelos relacionales ilustrados en una tabla.

Con el vocabulario establecido, la siguiente preocupación es mantenerping que los datos en esas relaciones sean válidos, que es la función de las restricciones de integridad.

Relacional Integrity Limitaciones

Las restricciones de integridad relacional en los sistemas de gestión de bases de datos (DBMS) se refieren a las condiciones que deben cumplirse para que una relación sea válida. Estas restricciones relacionales se derivan de las reglas del micromundo que representa la base de datos.

Existen muchos tipos de restricciones de integridad. Las restricciones en el sistema de gestión de bases de datos relacionales se dividen principalmente en tres categorías principales:

  1. Restricciones de dominio
  2. Restricciones clave
  3. Referencial Integrity Limitaciones

Restricciones de dominio

Las restricciones de dominio pueden infringirse si el valor de un atributo no aparece en el dominio correspondiente o si no es del tipo de datos apropiado.

Las restricciones de dominio especifican que, dentro de cada tupla, el valor de cada atributo debe ser atómico y provenir del dominio correcto. Los dominios se especifican como tipos de datos, que incluyen tipos estándar como enteros, números reales, caracteres, booleanos y cadenas de longitud variable.

Ejemplo:

CREATE DOMAIN CustomerName
CHECK (value NOT NULL)

El ejemplo mostrado demuestra cómo crear una restricción de dominio de tal manera que CustomerName no sea NULL.

Restricciones clave

Un atributo que puede identificar de forma única una tupla en una relación se llama clave de la tabla. El valor del atributo para diferentes tuplas de la relación debe ser único.

Ejemplo:

En la tabla dada, CustomerID es un atributo clave de la tabla Customer. Lo más probable es que tenga una sola clave para un cliente; CustomerID = 1 es solo para CustomerName “Google”. Un análisis completo de los diferentes tipos clave se aborda en la guía. claves del sistema de gestión de bases de datos (DBMS).

Identificación del cliente Nombre del cliente Estado
1 Google Activo
2 Amazon Activo
3 Apple Inactivo

Referencial Integrity Limitaciones

Las restricciones de integridad referencial en los sistemas de gestión de bases de datos (DBMS) se basan en el concepto de claves foráneas. Una clave foránea es un atributo importante de una relación al que deben hacer referencia otras relaciones. Una restricción de integridad referencial se produce cuando una relación hace referencia a un atributo clave de otra relación, ya sea diferente o idéntica. Dicho atributo clave debe existir en la tabla referenciada.

Ejemplo:

Integridad referencial entre el Cliente y Billrelaciones

En el ejemplo anterior, tenemos dos relaciones, Cliente y Billing.

La tupla para CustomerID = 1 se referencia dos veces en la relación. Billing. Entonces sabemos CustomerName “Google” tiene un importe de facturación de 300 dólares.

Operaciones en el modelo relacional

En el modelo de base de datos relacional se realizan cuatro operaciones básicas de actualización: insertar, actualizar, eliminar y seleccionar.

  • La función Insertar se utiliza para insertar datos en la relación.
  • Eliminar se utiliza para eliminar tuplas de la tabla.
  • Modificar le permite cambiar los valores de algunos atributos en tuplas existentes.
  • Seleccionar le permite elegir un rango específico de datos.

Siempre que se aplique una de estas operaciones, las restricciones de integridad especificadas en el esquema de la base de datos relacional nunca deben ser violadas.

recuadro Operadisrupción

La operación de inserción proporciona los valores de los atributos para una nueva tupla que debe insertarse en una relación.

Operación de inserción que agrega una nueva tupla a una relación.

Actualizar Operadisrupción

Como puede observar en la tabla de relaciones que aparece a continuación, el nombre del cliente 'Apple' se actualiza de Inactivo a Activo.

Operación de actualización que cambia un valor de estado en una tupla.

Eliminar Operadisrupción

Para especificar la eliminación, una condición sobre los atributos de la relación selecciona la tupla que se eliminará.

Operación de eliminación que elimina una tupla de una relación.

En el ejemplo anterior, el nombre del cliente "Apple" se elimina de la tabla.

La operación de eliminación podría violar la integridad referencial si la tupla que se elimina es referenciada por claves foráneas de otras tuplas en la misma base de datos de CRISPR Medicine News.

Seleccionar Operadisrupción

Seleccione la operación eligiendo una tupla específica.

En el ejemplo anterior, CustomerName “Amazon”Está seleccionado.

Modelo relacional frente a modelos jerárquicos y de red

El modelo relacional sustituyó a dos enfoques anteriores, y el contraste explica por qué se convirtió en el dominante. La tabla siguiente presenta los tres modelos uno al lado del otro.

Aspecto Modelo relacional Modelo Jerárquico modelo de red
Estructura Tablas (relaciones) Árbol, de padre a hijo Gráfico, muchos a muchos
Acceso a los datos Declarativo, por valor Navegación, por ruta Navegación por puntero
Relaciones Llaves extranjeras Vínculos entre padres e hijos Conjuntos y punteros
Lenguaje de consulta SQL Código de procedimiento Código de procedimiento
Flexibilidad Alto Bajo Media

Debido a que el modelo relacional aborda los datos por valor en lugar de navegar por enlaces físicos, un lenguaje de alto nivel como SQL Puede formular una consulta sin saber cómo se almacenan los datos.

Mejores prácticas para crear un modelo relacional

  • Los datos deben representarse como una colección de relaciones.
  • Cada relación debe representarse claramente en la tabla.
  • Las filas deben contener datos sobre instancias de una entidad.
  • Las columnas deben contener datos sobre los atributos de la entidad.
  • Las celdas de la tabla deben contener un único valor.
  • Cada columna debe tener un nombre único.
  • No puede haber dos filas idénticas.
  • Los valores de un atributo deben pertenecer al mismo dominio.

Ventajas del modelo de base de datos relacional

  • Sencillez: Un modelo de datos relacional en un sistema de gestión de bases de datos (DBMS) es más sencillo que los modelos jerárquicos y de red.
  • Independencia estructural: La base de datos relacional se ocupa únicamente de los datos y no de la estructura, lo que puede mejorar el rendimiento del modelo.
  • Fácil de usar: El modelo relacional es fácil de usar, ya que las tablas compuestas por filas y columnas son naturales y sencillas de entender.
  • Capacidad de consulta: Esto permite que un lenguaje de consulta de alto nivel como SQL evite la navegación compleja por la base de datos.
  • Independencia de datos: La estructura de una base de datos relacional se puede modificar sin necesidad de cambiar ninguna aplicación.
  • Escalable: En lo que respecta al número de registros o filas y al número de campos, una base de datos puede ampliarse para mejorar su usabilidad.

Desventajas del modelo relacional

  • Pocas bases de datos relacionales tienen límites en la longitud de los campos, los cuales no se pueden exceder.
  • Las bases de datos relacionales a veces pueden volverse complejas a medida que aumenta la cantidad de datos y las relaciones entre las piezas de datos se vuelven más complicadas.
  • Los sistemas de bases de datos relacionales complejos pueden dar lugar a bases de datos aisladas en las que la información no se puede compartir de un sistema a otro.

Preguntas Frecuentes

El grado es el número de atributos, o columnas, en una relación. La cardinalidad es el número de tuplas, o filas. El grado describe el ancho de la tabla y la cardinalidad su altura.

Una relación es un conjunto matemático, y un conjunto no contiene elementos duplicados. La clave primaria garantiza esto, de modo que cada tupla se identifica de forma única y no hay dos filas idénticas.

Los modelos de IA suelen entrenarse con características extraídas de tablas relacionales mediante uniones y agregaciones SQL. La IA también puede traducir una pregunta en lenguaje natural a SQL, de modo que los usuarios sin conocimientos técnicos puedan consultar las relaciones directamente.

Sí. A partir de datos de muestra o requisitos, la IA puede sugerir tablas, claves primarias y foráneas, y una forma normalizada. El resultado aún necesita revisión, ya que la normalización depende de reglas de negocio que la IA podría desconocer.

En la práctica, se utilizan indistintamente. Formalmente, una relación es un conjunto de tuplas sin orden ni duplicados, mientras que una tabla es su representación física, que puede mostrar las filas en un orden determinado.

Resumir este post con: