🎯 Objetivo:
Conocer los principales tipos de bases de datos NoSQL, sus características y en qué casos se utilizan.
🧠 ¿Por qué hay distintos tipos de NoSQL?
A diferencia del modelo relacional, que es uno solo, el ecosistema NoSQL ofrece distintas estructuras para resolver distintos problemas.
Cada tipo está optimizado para una necesidad específica (velocidad, relaciones, escalabilidad, etc.).
1. 🗃️ Bases de datos Documentales
-
Qué son:
Almacenan los datos como documentos, usualmente en formato JSON o BSON. -
Ejemplo de documento:
-
Ventajas:
-
Muy flexibles: cada documento puede tener su propia estructura.
-
Rápidos para leer y escribir.
-
Ideales para aplicaciones web y móviles.
-
-
Casos de uso:
MongoDB, CouchDB.
Usados en sistemas de usuarios, catálogos de productos, contenido dinámico.
2. 🔑 Bases de datos Clave-Valor
-
Qué son:
Guardan información como un gran diccionario: una clave y su valor asociado. -
Ejemplo:
| Clave | Valor |
|---|---|
| «user_123» | {"nombre": "Cristian", "edad": 35} |
-
Ventajas:
-
Extremadamente rápidas.
-
Simples de escalar.
-
Ideales para almacenar sesiones, cachés o tokens.
-
-
Casos de uso:
Redis, Amazon DynamoDB.
Usados para datos temporales, configuración rápida, autenticación.
3. 🧱 Bases de datos Columnares
-
Qué son:
Almacenan los datos por columnas en vez de por filas, lo que mejora el rendimiento en consultas analíticas. -
Ejemplo simplificado:
-
Ventajas:
-
Excelente para análisis de grandes volúmenes de datos.
-
Consultas por columnas son muy rápidas.
-
Escalables horizontalmente.
-
-
Casos de uso:
Apache Cassandra, HBase.
Usados en sistemas de métricas, logs, BI (Business Intelligence).
4. 🌐 Bases de datos de Grafos
-
Qué son:
Almacenan datos como nodos y relaciones. Perfectas para representar redes. -
Ejemplo:
Usuario A «sigue» a Usuario B, Usuario B «comenta» en publicación de Usuario C. -
Ventajas:
-
Relacionan datos de forma natural y rápida.
-
Muy útiles cuando hay muchas conexiones entre elementos.
-
Soportan consultas como: “¿Quién es amigo de mi amigo?”
-
-
Casos de uso:
Neo4j, Amazon Neptune.
Usados en redes sociales, rutas logísticas, motores de recomendación.
🔍 Comparación rápida
| Tipo | Ideal para… | Ejemplo |
|---|---|---|
| Documental | Contenido flexible y dinámico | MongoDB |
| Clave-Valor | Cachés y sesiones | Redis, DynamoDB |
| Columnares | Grandes volúmenes analíticos | Cassandra, HBase |
| Grafos | Conexiones y relaciones complejas | Neo4j, Amazon Neptune |
📝 Actividad práctica
-
Clasifica estos casos en el tipo de NoSQL que usarías:
-
Red social como Instagram
-
Carrito de compras en un e-commerce
-
Dashboard de métricas con millones de registros
-
Motor de recomendaciones tipo “Amigos que podrías conocer”
-
-
Justifica tu elección.
✅ Revisión rápida
-
¿Qué tipo de NoSQL usarías si necesitas guardar perfiles de usuario muy distintos entre sí?
-
¿Qué ventaja tiene una base de datos columnar frente a una relacional tradicional?
-
¿Qué tipo de NoSQL está pensado para datos con relaciones complejas?