Un modelo de base de datos muestra la estructura lógica de la base, incluidas las relaciones y limitaciones que determinan cómo se almacenan los datos y cómo se accede a ellos. Los modelos de bases de datos individuales se diseñan en base a las reglas y los conceptos de cualquier modelo de datos más amplio que los diseñadores adopten. La mayoría de los modelos de datos se pueden representar por medio de un diagrama de base de datos acompañante.
9 minutos de lectura
¿Deseas crear tu propio diagrama de base de datos? Prueba Lucidchart. Es rápido, sencillo y totalmente gratis.
Tipos de modelos de bases de datos
Hay muchos tipos de modelos de bases de datos. Algunos de los más comunes incluyen:
- Modelo de base de datos jerárquico
- Modelo relacional
- Modelo de red
- Modelo de base de datos orientado a objetos
- Modelo entidad-relación
- Modelo de documentos
- Modelo entidad-atributo-valor
- Esquema de estrella
- Modelo relacional de objetos, que combina los dos que forman su nombre
Puedes elegir describir una base de datos con cualquiera de ellos dependiendo de varios factores. El mayor factor es si el sistema de gestión de bases de datos que estás usando es compatible con un modelo en particular. La mayoría de los sistemas de gestión de bases de datos están desarrollados con un modelo de datos particular en mente y requieren que los usuarios adopten ese modelo, aunque algunos son compatibles con múltiples modelos.
Además, diferentes modelos aplican a diferentes etapas del proceso de diseño de bases de datos. Los modelos de datos conceptuales de alto nivel son mejores para crear mapas de relaciones entre datos en las formas en que la gente percibe esos datos. Por otro lado, los modelos lógicos basados en registros reflejan más estrechamente las formas en que los datos se almacenan en el servidor.
La elección de un modelo de datos también depende de que alinees tus prioridades con las fortalezas de la base de datos de un modelo en particular, ya sea que esas prioridades incluyan velocidad, reducción de costos, usabilidad o algo más.
Demos un vistazo detallado a algunos de los modelos de bases de datos más comunes.
Modelo relacional
Siendo el modelo más común, el modelo relacional ordena los datos en tablas, también conocidas como relaciones, cada una de las cuales se compone de columnas y filas. Cada columna enumera un atributo de la entidad en cuestión, por ejemplo, precio, código postal o fecha de nacimiento. En conjunto, a los atributos en una relación se los llama dominio. Se elige un atributo particular o combinación de atributos como clave primaria, a la cual se puede hacer referencia en otras tablas, en donde se la denomina clave externa.
Cada fila, también denominada tupla, incluye datos sobre una instancia específica de la entidad en cuestión, por ejemplo, un empleado específico.
El modelo también representa los tipos de relaciones entre esas tablas, incluidas las relaciones uno a uno, uno a muchos y muchos a muchos. Este es un ejemplo:
Dentro de la base de datos, las tablas se pueden normalizar, es decir, hacer que cumplan las reglas de normalización que hacen a la base de datos flexible, adaptable y escalable. Al estar normalizada, cada porción de los datos es atómica, es decir, está dividida en partes útiles lo más pequeñas posibles.
Las bases relacionales generalmente se escriben en Lenguaje de Consulta Estructurado (SQL, por sus siglas en inglés). El modelo fue introducido por E. F. Codd en 1970.
Modelo jerárquico
El modelo jerárquico organiza los datos en una estructura de árbol, en la que cada registro tiene un único elemento o raíz. Los registros del mismo nivel se clasifican en un orden específico. Ese orden se usa a manera de orden físico para almacenar la base de datos. El modelo es bueno para describir muchas relaciones del mundo real.
Este modelo fue usado principalmente por los Sistemas de Gestión de Información de IBM en las décadas de 1960 y 1970, pero raramente se los ve en la actualidad debido a ciertas ineficiencias operativas.
Modelo de red
El modelo de red se basa en el modelo jerárquico, permitiendo relaciones de muchos a muchos entre registros vinculados, lo que implica registros principales múltiples. Basado en la teoría matemática de conjuntos, el modelo se construye con conjuntos de registros relacionados. Cada conjunto consiste de un registro propietario o principal y uno o más registros miembros o secundarios. Un registro puede ser miembro o secundario en múltiples conjuntos, permitiendo que este modelo represente relaciones complejas.
Fue muy popular en la década de 1970 después de que fue definido formalmente por la Conference on Data Systems Languages (CODASYL).
Modelo de base de datos orientado a objetos
Este modelo define una base de datos como una colección de objetos, o elementos de software reutilizables, con funciones y métodos relacionados. Hay varios tipos de bases de datos orientadas a objetos:
Una
base de datos multimedia
incorpora elementos multimedia, tales como imágenes, que no se podrían almacenar en una base de datos relacional.Una
base de datos de hipertexto
permite que cualquier objeto se conecte a cualquier otro objeto. Es útil para organizar lotes de datos disímiles, pero no es ideal para análisis numérico.El modelo de base de datos orientado a objetos es el mejor modelo conocido de base de datos posrelacional ya que incorpora tablas, pero no se limita a ellas. A dichos modelos también se los conoce como modelos de base de datos híbridos.
¿Deseas crear tu propio diagrama de base de datos? Prueba Lucidchart. Es rápido, sencillo y totalmente gratis.
Genera un diagrama de base de datosModelo relacional de objetos
Este modelo de base de datos híbrido combina la sencillez del modelo relacional con parte de la funcionalidad avanzada del modelo de base de datos orientado a objetos. En esencia, permite a los diseñadores incorporar objetos en una estructura familiar de tablas.
Entre los idiomas e interfaces de llamada se incluyen SQL3, lenguajes de proveedores, ODBC, JDBC e interfaces de llamada patentadas que son extensiones de lenguajes e interfaces usadas por el modelo relacional.
Modelo entidad-relación
Este modelo capta las relaciones entre entidades del mundo real de forma muy similar al modelo de red, pero no está directamente ligado a una estructura física de la base de datos. En cambio, con frecuencia se lo usa para diseñar una base de datos conceptualmente.
Aquí, a las personas, lugares y cosas, acerca de las cuales se almacenan puntos de datos, se las denomina entidades, cada una de las cuales tiene ciertos atributos que en conjunto forman su dominio. La cardinalidad, o relaciones entre entidades, también se representa en diagramas.
Una forma común del diagrama entidad-relación ER es el esquema de estrella, en el cual una tabla central de información se conecta a múltiples tablas dimensionales.
Otros modelos de bases de datos
Otros diversos modelos de bases de datos se han usado y siguen usándose en la actualidad.
Modelo de archivo invertido
Una base de datos construida con estructura de archivo invertido se diseña para facilitar búsquedas rápidas de texto completo. En este modelo, el contenido de datos se indexa como una serie de claves en una tabla de búsqueda, donde los valores indican la ubicación de los archivos asociados. Esta estructura puede proporcionar un informe casi instantáneo de, por ejemplo, datos masivos y análisis estadístico.
Este modelo ha sido usado por el sistema de gestión de bases de datos ADABAS de Software AG desde 1970, y se sigue utilizando en la actualidad.
Modelo plano
El modelo plano es el modelo de datos más antiguo y más sencillo. Simplemente presenta todos los datos en una sola tabla, que consiste de columnas y filas. Para acceder a los datos o manipularlos, la computadora tiene que leer todo el archivo plano y traerlo a la memoria, lo que vuelve a este modelo ineficiente para todo, excepto para los conjuntos de datos más pequeños.
Modelo multidimensional
Esta es una variación del modelo relacional diseñado para facilitar un mejor procesamiento analítico. Aunque el modelo relacional está optimizado para procesamiento de transacciones en línea (OLTP), este modelo está diseñado para procesamiento analítico en línea (OLAP).
Cada celda de una base de datos dimensional contiene datos acerca de las dimensiones registradas por la base de datos. Visualmente, es como una colección de cubos, en lugar de tablas bidimensionales.
Modelo semiestructurado
En este modelo, los datos estructurales comúnmente contenidos en el esquema de la base de datos están incrustados con los datos mismos. Aquí la diferencia entre los datos y el esquema es imprecisa en el mejor de los casos. Este modelo es útil para describir sistemas, tales como ciertas fuentes de datos basadas en web, las cuales tratamos como bases de datos, pero que no podemos limitar con un esquema. También es útil para describir interacciones entre bases de datos que no se apegan al mismo esquema.
Modelo de contexto
Este modelo puede incorporar elementos de otros modelos de bases de datos, según sea necesario. Improvisa elementos de modelos orientados a objetos, semiestructurados y de red.
Modelo asociativo
Este modelo divide todos los puntos de datos en base a si describen una entidad o una asociación. En este modelo, una entidad es todo lo que existe de manera independiente, mientras que una asociación es algo que solo existe en relación a algo más.
El modelo asociativo estructura los datos en dos grupos:
- Un grupo de elementos, cada uno con un identificador único, un nombre y un tipo.
- Un grupo de enlaces, cada uno con un identificador único y los identificadores únicos de una fuente, verbo u objetivo. La información almacenada tiene que ver con la fuente y cada uno de los tres identificadores pueden hacer referencia ya sea a un enlace o a un elemento.
Otros modelos menos comunes de bases de datos incluyen:
- Modelo semántico, el cual incluye información acerca de cómo los datos almacenados se relacionan con el mundo real.
- Base de datos XML, la cual permite que los datos sean especificados e incluso almacenados en formato XML.
- Gráfico etiquetado.
- Triplestore.
Modelos de bases de datos NoSQL
Además del modelo de base de datos de objetos, otros modelos distintos al tipo SQL han surgido en contraste con el modelo relacional:
El
modelo de base de datos gráfico
, el cual es aún más flexible que el modelo de red, permitiendo que cualquier nodo se conecte a cualquier otro.El
modelo multivalor
, el cual se desprende del modelo relacional, permitiendo que los atributos contengan una lista de datos en lugar de un solo punto de datos.El
modelo de documentos
, el cual se diseña para almacenar y administrar documentos o datos semiestructurados, en lugar de datos atómicos.Bases de datos en la web
La mayoría de los sitios web dependen de cierto tipo de base de datos para organizar y presentar datos a los usuarios. Cada vez que alguien usa las funciones de búsqueda en estos sitios, sus términos de búsqueda son convertidos en consultas para que un servidor de bases de datos los procese. Generalmente, programas intermedios conectan el servidor web con la base de datos.
La amplia presencia de las bases de datos les permite ser usadas casi en cualquier campo, desde compras en línea hasta el enfoque detallado en un segmento de votantes como parte de una campaña política. Diversas industrias han desarrollado sus propias normas para el diseño de bases de datos, desde el transporte aéreo hasta la manufactura de vehículos.