Lista de los principales tipos y modelos de base de datos que existen
by Juan Carlos García
30-Jul-2024
(14)
Suscribirme al canal:
Hola de nuevo viajero web ¿Estás listo para embarcarte en este nuevo post? Hoy veremos las características de los principales tipos y Modelos de base de datos (DB) que existen, esta clasificación pertenece al segundo capítulo del Curso gratuito de base de datos que estoy subiendo a mi página y a mi canal de YouTube, espero que te sea de utilidad. 🤗
Este segundo capítulo es la parte teórica que veremos en este pequeño curso, te recomiendo que lo leas para ir avanzando paso a paso, ya que estos conceptos son muy importantes, también te recomiendo suscribirte al mi boletín y canal de YouTube, para que te enteres cuando suba nuevas clases.
El objetivo es que al final de este post te sea fácil distinguir los diferentes modelos que existen y comprendas el por qué y para qué existe cada uno, como siempre te dejo la tabla del contenido de este post para que identifiques todos los puntos que veremos.
¡No te puedes perder las nuevas clases 🧐!
Modelos de Base de Datos
Lista de los principales tipos y modelos de base de datos que existen
(14)
Normalización de base de datos
Normalización de base de datos: descripción y características de las 5 formas normales.
(11)
Modelo entidad relación
Modelo entidad relación: simbología y características del diagrama entidad relación.
(9)
Servidor de Base de Datos
Servidores de Base de Datos: ¿Qué son? Tipos, características e instalación.
(5)
Backup y restaurar SQL Server
Backup SQL Server: ¿Cómo respaldar y restaurar una base de datos en SQL Server?
(2)
🧐 Autoevaluación: Modelos de Base de Datos
¿Qué es una base de datos relacional?
¿En qué se diferencia una base de datos NoSQL de una base de datos relacional?
Sigue aprendiendo Bases de datos con estos libros
Si te esta gustando este curso, puedes complementar tu conocimiento con estos libros que creo te servirán mucho.
BASE DE DATOS: es una tarea fácil (Spanish Edition)
Diseño de Bases de Datos - Un enfoque práctico: Aprende a diseñar bases de datos desde el modelo conceptual hasta el modelo relacional con esta guía práctica con ejemplos (Spanish Edition)
Hosting Digital Oceans
Con nuestro link de recomendación de EWebik, recibe 200 dólares en crédito para probar tus proyectos por 60 días.
- VPS que van desde los 5 dólares.
- VPS escalables.
- Levanta tus servidores con unos pocos clics y crécelos cuando los necesites.
Gracias por tu calificación
(14)
Para iniciar este post te dejo una definición de modelo de base de datos, ya que es la parte medular de este post.
¿Qué es un modelo de base de datos?
Un modelo de base de datos es aquello capaz de mostrar una estructura lógica de la base de datos entre las relaciones y limitaciones que se tienen para el almacenamiento y lectura de los datos.
Dado que los modelos cuentan con una estructura lógica, pueden ser representados mediante diagramas, los cueles veremos en otro post.
Antes de pasar a describir cada uno de los modelos, es importante que conozcas los diferentes tipos de bases de datos que existen y como los podemos clasificar, así que empezaremos revisando dicha clasificación.
Clasificación y tipos de base de datos
Las bases de datos se clasifican dependiendo su contexto y utilidad; puedes encontrar bases de datos con características especiales, las cuales corresponden a satisfacer necesidades específicas.
En las bases de datos tenemos dos clasificaciones:
- Bases de datos según la variabilidad
- Y bases de datos según su contenido.
Cada clasificación tiene distintos tipos de bases de datos, las cuales conocerás a continuación.
Bases de datos según su variabilidad
En esta clasificación se encuentran dos tipos de bases de datos: estáticas y dinámicas.
Bases de datos estáticas
Estas bases de datos están hechas solamente para fines de consulta y lectura, debido a que son utilizadas para el almacenamiento y registro de datos históricos; además, permite desarrollar estudios que permitan una comprensión sobre el comportamiento de estos datos.
Puedes encontrar mucho de este tipo de bases de datos en empresas que constantemente realizan proyecciones de estadística para mejorar la productividad futura y la toma de decisiones.
Bases de datos dinámicas
Esta es la contraparte de las bases de datos estáticas, ya que las bases de datos dinámicas permiten modificar los datos que alberga, haciendo que sea posible actualizar, eliminar o simplemente editar la información.
Puedes encontrar valiosas aplicaciones de este tipo de bases de datos en los inventarios de tiendas, ya sea desde algunas misceláneas hasta supermercados.
Bases de datos según su contenido
Aquí ya cambia un poco el asunto sobre las bases de datos, ya que en esta clasificación se da prioridad al contenido a analizar. Encontraras tres tipos principales de bases de datos: bibliográficas, directorios y de texto completo.
Bases de datos bibliográficas
Probablemente te suene familiar esta base de datos, y no es de extrañarse, ya que es una de las primeras bases de datos que conocemos desde la primaria hasta la educación superior. Esta base de datos sirve para realizar registros que ayudan a la clasificación de diversos campos.
Las bases de datos bibliográficas más conocidas son aquellas que contiene como campos registrables un autor, una fecha de publicación, un título, un número de páginas, una editorial, etc.
Directorios
Este tipo de bases de datos contienen elementos básicos que nos permiten clasificar y ordenar libremente la información, colocando en un orden personalizado algunos campos registrables, como lo son…
- Contactos telefónicos.
- Nombres.
- Direcciones.
- Correos electrónicos
- Datos de facturación, redes sociales, etc.
Un ejemplo que seguro conoces son las guías telefónicas, las cuales hoy en día abundan en formato digital.
Bases de datos de texto completo
Por último, una base de datos de texto completo tiene características similares a la de una base de datos bibliográfica:
- Puedes buscar palabras clave, términos específicos, números, etc.
Sin embargo, aquí sí puedes consultar por completo el texto o la información archivada, suelen utilizarse mucho en academias, centros de investigación y universidades,
Excelente, ahora ya conoces la clasificación y los distintos tipos de bases de datos que existen, es tiempo de regresar y estudiar un poco los modelos de base de datos donde se prioriza el modelo de administración de datos. Veamos de que se trata.
📌 Tipos de modelos de bases de datos
Después de esta tremenda clasificación de las bases de datos que hemos visto en función a su contexto y utilidad, es momento de que conozcas que existe otra forma de clasificar las bases de datos:
- En función a los diferentes modelos existentes de administración de datos.
Recordemos que un modelo de datos se define como una “descripción” de algo previamente conocido como un almacén de datos, así como las diferentes técnicas que existen para almacenar, editar y recuperar dichos datos.
Los modelos de datos se entienden como abstracciones, las cuales permiten obtener eficacia de las bases de datos por medio de algoritmos. Existen principalmente seis tipos de bases de datos:
- Bases de datos jerárquicas.
- Bases de datos de red.
- Bases de datos transaccionales.
- Bases de datos relacionales.
- Bases de datos no relacionales.
- Bases de datos multidimensionales.
- Bases de datos orientada a objetos.
- Bases de datos documentales.
- Bases de datos deductivas.
- Bases de datos geoespaciales.
Empecemos a desmenuzar cada una de ellas.
Gracias por tu calificación
(14)
Gracias por tu calificación
(14)
Bases de datos jerárquicas
Esta base de datos se caracteriza por almacenar la información precisamente en una estructura jerárquica, la cual enlaza los registros existentes en forma de una estructura de árbol, donde el nodo padre (sección principal de la información) puede tener varios nodos hijos, es decir, el modelo jerárquico facilita las relaciones hijo-padre.
Esta estructura de árbol es muy conocida en estructura de datos, y tiene forma como de un árbol invertido.
A pesar de ser muy funcional, tiene muchos problemas, debido a que el sistema gestor de base de datos no se encarga del control sobre los datos que se almacenan, sino que los deja en manos de las aplicaciones gestoras. Algunos de los problemas más comunes son los siguientes:
- Duplicidad de registros.
- Desnormalización (permite ingresar redundancias controladas).
- Integridad referencia.
Aun así, puedes ver este tipo de bases de datos en aplicaciones donde existen volúmenes de información muy grandes, donde sus datos son altamente compartidos.
Bases de datos de red
Este tipo de base de datos es muy similar al modelo jerárquico que vimos anteriormente; sin embargo, las bases de datos de red o también llamadas bases de datos plex se caracterizan por tener en un mismo nodo varios padres, lo cual no se puede hacer en el modelo jerárquico.
Lo anterior se refiere a que las bases de datos en red vienen a corregir las deficiencias del modelo jerárquico, sobre todo cuando hablamos de relaciones de muchos a muchos.
Bases de datos transaccionales
Las bases de datos transaccionales tienen la característica especial de estar diseñadas para aquellos sistemas en que los datos cambian constantemente, estas bases de datos no tienen problemas de duplicidad, desnormalización o redundancia en la información.
El ejemplo clásico de transacción y el uso de este tipo de modelo es en las transferencias bancarias, donde todos los días millones de personas realizan operaciones financieras, las cuales finalmente se transforman en consultas, actualizaciones o eliminación de datos dentro de la DB.
Las bases de datos transaccionales tienen muchas ventajas, pero las que más destacables son las siguientes:
- Aseguran la integridad de los datos.
- Facilitan las consultas complejas gracias a su optimización de datos.
- Permiten una modificación segura (sin poner en riesgo la integridad de los datos).
- Ejecutan operaciones bastante rápido.
- Ofrece datos en tiempo real.
Bases de datos relacionales
Bien, ahora pasamos a revisar el tema de una base relacional, la cual, realmente es el tema central de este curso inicial de base de datos, comenzaré indicando ¿Qué es? Y cuales son las características de este tipo de base de datos.
Una base datos relacional Cumple con el modelo relacional postulado por el matemático Edgar Frank Codd y, entre sus principales características tenemos que:
- Nos permite almacenar datos en varias tablas, las cuales llamáramos relaciones, dichas relaciones deben de tener un nombre único dentro de la base de datos.
- La forma en que se relacionan las tablas, es a través de llaves primarias y foráneas.
- Interpretar a una llave primaria como la clave principal que gobiernan los registros o filas de una tabla y con la cual aseguramos la integridad de los datos.
- Con llaves foráneas relacionaremos dos o más tablas, por ejemplo, si tenemos una tabla padre con su clave primaria, nosotros podemos crear una llave foránea la cual colocaremos en una tabla hija y, está llave foránea tendrá exactamente el mismo valor que la llave primaria de la tabla padre, con esto hemos creado una relación entre estas dos tablas.
Bien, todo esto lo veremos a detalle cuando pasemos de lleno al tema de base datos relacionales, por el momento lo importante es que comprendas que este tipo de base datos cumple con el modelo relacional y, almacena los datos en tablas organizadas por filas y columnas y que existen las llaves, con las cuales podemos crear relaciones entre tablas, siempre cuidando y asegurando la integridad de los datos.
Bases de datos no relacionales
Quizá el término “No relacionales” te da una ida de lo que va este tipo de DB, a continuación veremos varias de sus características y ventajas que existen al trabajar con estas bases e datos.
Las bases de datos no relacionales o bases de datos NoSQL se caracterizan por no poseer un identificador como tal, que sirva de relación entre los datos, se dice que las bases de datos no relacionales son NoSQL porque es posible, pero, no necesario utilizar tablas para almacenar información, dicha información comúnmente se organiza en documentos o fichas.
La mayoría de las bases de datos no relacionales utilizan una arquitectura distribuida, la cual permite mantener en varios servidores los datos de forma redundante, utilizando tablas hash distribuidas. Gracias a esta propiedad, el sistema NoSQL puede escalar con eficiencia aumentando los servidores.
Las ventajas características de estas bases de datos van desde la escalabilidad hasta la ejecución de clúster de manera optimizada. A continuación, veamos cada una de ellas:
- Crecimiento horizontal: una de las características que destacan a las bases de datos NoSQL, es que son muy escalables, ya que podemos instalar más nodos para ampliar la capacidad de la base de datos sin tener interrupciones de usabilidad o consultas.
- Capacidad: las bases de datos no relacionales tienen una capacidad enorme de manejar grandes volúmenes de datos e información. Esta característica hace que estas bases de datos sean muy versátiles.
- No se generan cuellos de botella o descompensaciones en los sistemas donde se estén trabajando.
Sin embargo, algunas de las desventajas que presentan estas bases de datos son las siguientes:
- Baja estandarización: los motores que se utilizan en las bases de datos NoSQL no tienen un criterio definido totalmente, el lenguaje puede variar respecto a la base de datos que se esté utilizando.
- Poca documentación: existe poca información respecto a algunas herramientas y funciones de estas bases de datos, por lo que puede llegar a limitar algunas tareas u objetivos.
- Poca compatibilidad: esta desventaja va unida con la primera, ya que, por falta de estandarización, las bases de datos no relacionales tienen pocas normas, lo que provoca fallas en la compatibilidad.
- No hay atomicidad: algunas bases de datos NoSQL no poseen atomicidad en su información, provocando problemas de análisis.
Gracias por tu calificación
(14)
Gracias por tu calificación
(14)
Base de datos multidimensionales
Las bases de datos multidimensionales son muy similares a las bases de datos relacionadas; no obstante, en las DB multidimensionales los atributos de una tabla puede ser de dos tipos o representar dimensiones en dicha tabla. Estas bases de datos tienen la capacidad de procesar de manera eficaz y rápida los datos.
El enfoque de aplicación puede variar, al igual que la interfaz de usuario, sin embargo, este tipo de bases de datos se utilizan comúnmente para la creación de cubos OLAP (OnLine Analytical Processing) o traducido al español como Proceso Analítico en Línea. Este procesamiento consiste en una base de datos multidimensional en el cual los datos físicos son almacenados en un vector multidimensional.
Otras características que tienen estas bases de datos son las siguientes:
- Los registros en las tablas multivaluadas son almacenados dependiendo de la dimensión de la tabla o las métricas que se quieren analizar.
- Cada columna o campo de la tabla es una dimensión, mientras que otro campo corresponde a cada métrica.
Este tipo de bases de datos son muy eficientes a la hora de hacer consultas, incluso más que las bases de datos relacionales; además, permite extraer datos selectivamente, al igual que hacer consultas de diferente tipo, lo que hace a estas bases de datos ideal para análisis de negocios, gestión avanzado de datos y minería de datos.
No obstante, debes saber que las bases de datos multidimensionales tienen un “pequeño” gran problema: no es posible modificar su estructura. Esto significa que si deseas realiza cambios es esta base de datos, se tendrá que diseñar de nuevo.
Base de datos orientada a objetos
Si estudias informática o alguna rama relacionada, el concepto “orientado a objetos” probablemente se te haga muy familiar; no es casualidad, ya que este modelo consiste en almacenar objetos completos en la base de datos. Cuando se aplican lenguajes de programación orientados a objetos a una base de datos, el resultado es un Sistema Gestor de Base de Datos Orientada a Objetos (ODBMS).
Esta base datos utiliza todo el potencial que ofrece este paradigma, incluso sus conceptos esenciales; por lo tanto, una base de datos orientada a objetos incorpora las siguientes características:
- Herencia: esta propiedad se refiere a la cualidad que tiene los objetos de heredar el comportamiento o cualidades, todo dentro de una jerarquía definida por clases.
- Encapsulación: la encapsulación tiene la cualidad de permitir que la información sea ocultada para el resto de los objetos. Dicha propiedad ayuda a que no existan accesos conflictivos.
- Polimorfismo: el polimorfismo es la capacidad que tiene una operación de aplicarse a distintos tipos de objetos.
Las ODBMS se caracterizan por ser ideales cuando se requiere un buen rendimiento en la manipulación de datos complejos; además, este tipo de bases de datos tienen costes de desarrollo y mantenimiento menores a comparación de otras bases de datos.
Base de datos documental
Las bases de datos documentales tienen la característica inherente de indexación a texto completo, lo que posibilita búsquedas mucho más eficientes y potentes; además, están diseñadas para almacenar volúmenes grandes de información, donde la mayoría son antecedentes históricos o datos que se desean procesar.
Otra característica muy importante que debes conocer respecto a estas bases de datos, es que los documentos pueden direccionarse por medio de claves, las cuales son únicas y simples, pues en su mayoría son cadenas de caracteres o en casos especiales, una URL.
Los documentos que se encuentran en una base de datos orientada a documentos son similares a registros o filas (al compararse con las bases de datos relacionales). La ventaja de estas bases de datos, es que no se requiere un esquema estandarizado ni que todos los documentos tengan las mismas secciones o atributos, en ese aspecto, estas bases de datos son muy dinámicas y flexibles.
Dentro de las bases de datos orientadas a documentos, tienes la capacidad de organizar los documentos de una forma libre, pero las implementaciones de organización más utilizadas son las siguientes:
- Organización por etiquetas.
- Colecciones.
- Jerarquías de directorios.
- Metadatos ocultos.
Y BaseX, ArangoDB, CouchDB, MongoDB y Redis son algunas implementaciones famosas de las bases de datos documentales.
Base de datos deductivas
Las bases de datos deductivas se originaron principalmente para cubrir las limitaciones de las bases de daos relacionales respecto a las consultas recursivas y la deducción de relaciones indirectas de los datos que se almacena.
Estas bases de datos tienen la propiedad de permitir realizar deducciones a través de conclusiones originadas por premisas, es decir, a través de inferencias. Su sistema se basa totalmente en la lógica matemática, por lo que en otras fuentes estas bases de datos las encontrarás como bases de datos lógicas.
Cuenta con dos fases de operación:
- Primero tenemos una fase de interrogación, la cual tiene como tarea la búsqueda de informaciones deducibles en la base de datos.
- Posteriormente esta la fase de modificación, que se encarga de agregar nuevas informaciones deducibles a la base de datos.
Para realizar las conclusiones bajo premisa o inferencias, la base de datos utiliza dos mecanismos: mecanismo ascendente (se parte de hechos y se obtienen nuevos gracias a las reglas de inferencia) y mecanismo descendente (se parte del predicado y lleva a hechos correctos en la base de datos gracias a las variables y sus similitudes).
Para su administración y creación, se utiliza un lenguaje llamado Datalog, un subconjunto del famoso lenguaje de programación Prolog. Datalog se caracteriza por ser declarativo, permitiendo a la computadora realizar deducciones para responder a las consultas basándose en hechos almacenados.
Algunas ventajas que las bases de datos lógicas o deductivas proporcionan, son las siguientes:
- Soporta conjuntos complejos.
- Permite negaciones estratificadas.
- Usa las reglas lógicas para expresar las consultas.
- Te permite responder consultas recursivas.
- Puedes utilizar algoritmos matemáticos para potenciar las consultas.
Base de datos geoespacial
Las bases de datos geoespaciales surgen de la necesidad de tener un modelo genérico para el tratamiento de la información geoespacial, logrando así almacenar datos geográficos, sus relacionales espaciales, no espaciales, atributos y analizar el comportamiento de cada elemento que se registre.
Una base de datos geoespacial permite trabajar con cada objeto (Geo-objeto) de forma casi independiente; tiene sus propios atributos, comportamiento y geometría. Al igual que otras bases de datos, incluye reglas de integridad y comportamiento, las cuales se aplican a una colección de geo-objetos integrados; además, al analizar los datos, ya no se habla de líneas, datos o polígonos, sino de lugares específicos (lagos, carreteras, etc.)
La base de datos geoespacial obedece un esquema, la cual tiene cinco parámetros principales:
- Dataset: equivale a una tabla de atributos.
- Dominios: son los rangos de valores válidos para cada atributo. Los dominios controlan la integridad de los datos.
- Relaciones: similar a las bases de datos relacionales, los atributos tienen entre sí relaciones explicitas.
- Reglas espaciales: las reglas espaciales modelan cómo los objetos se relacionan geométricamente con otros objetos.
- Capas de mapas: mapas interactivos, donde se representan los elementos u objetos de la base de datos.
Algunas ventajas de trabajo que caracterizan a estas bases de datos, vienen protagonizadas por sus accesos multiusuario y compatibilidad con una gama de gestores de base de datos, como SQL, IBM DB2, Oracle y Microsoft Access.
Otras ventajas significativas de las bases de datos geoespaciales son las siguientes:
- Comportamiento de cada objeto y simbología.
- Edición multiusuario.
- Gestión de datos centralizada.
Gracias por tu calificación
(14)
Excelente viajero, hoy has aprendido los principales tipos de base de dato ¿Te ha gustado? Si tu respuesta es sí, por favor ve al siguiente capítulo y comporte este pequeño curso de base de datos para que mas colegas tengan la oportunidad de aprender, nos vemos en el siguiente post.
🧐 Autoevaluación: Modelos de Base de Datos
¿Qué es una base de datos relacional?
¿En qué se diferencia una base de datos NoSQL de una base de datos relacional?
Juan Carlos García
Desarrollador de software / SEO
Durante años he desarrollado plataformas dedicadas al rastreo satelital y varios sitios web que se encuentran en la primera página de Google, y hoy quiero compartir contigo lo que se en tecnologías como: Node JS, PHP, C# y Bases de datos.
Si quieres apoyarme sígueme en mis redes sociales y suscríbete a mi canal de YouTube.