Bases de datos nosql
1. ¿Qué es una Base de Datos Documental?
Una base de datos documental es un tipo de base de datos NoSQL diseñada para almacenar, recuperar y gestionar información en formato de documento estructurado, generalmente en JSON o BSON.
¿Cómo funciona?
En lugar de almacenar datos en filas y columnas como en una base de datos relacional (SQL), aquí los datos se guardan en documentos independientes.
Cada documento puede tener una estructura diferente y contener datos anidados.
📌 Ejemplo:
Imagina que queremos almacenar información de usuarios.
En una base de datos relacional (SQL), tendríamos una tabla así:
| ID | Nombre | Edad | |
|---|---|---|---|
| 1 | Ana | 25 | ana@email.com |
| 2 | Carlos | 30 | carlos@email.com |
En una base de datos documental, esta misma información se guardaría en formato JSON así:
1{ 2 "nombre": "Ana", 3 "edad": 25, 4 "email": "ana@email.com" 5}
1{ 2 "nombre": "Carlos", 3 "edad": 30, 4 "email": "carlos@email.com" 5}
Cada registro es un documento independiente y no es necesario que todos tengan la misma estructura.
2. Diferencias con Bases de Datos Relacionales
📌 Diferencia principal:
- En SQL, los datos se organizan en tablas con filas y columnas.
- En NoSQL documental, los datos están en documentos JSON independientes.
📊 Comparación rápida
| Característica | SQL (Relacional) | NoSQL (Documental) |
|---|---|---|
| Estructura | Tablas y filas | Documentos JSON |
| Rigidez | Estructura fija | Estructura flexible |
| Escalabilidad | Vertical (añadir más potencia al servidor) | Horizontal (añadir más servidores) |
| Ejemplo de uso | Bancos, sistemas contables | Aplicaciones web, big data, IoT |
¿Cuándo usar bases documentales?
✅ Cuando los datos no siempre tienen la misma estructura
✅ Cuando necesitas flexibilidad y velocidad
✅ Cuando trabajas con datos semiestructurados (JSON, XML)
3. Historia y Evolución
Las bases de datos documentales surgieron con la necesidad de manejar grandes volúmenes de datos de manera más flexible que los sistemas relacionales tradicionales.
📌 Principales hitos:
- 1970: Aparecen las primeras bases de datos relacionales (SQL)
- 2000s: Empresas como Google, Facebook y Amazon enfrentan problemas de escalabilidad con SQL
- 2009: Se populariza MongoDB, una de las bases documentales más usadas
- Hoy: Son esenciales en el desarrollo web, big data e inteligencia artificial
4. Casos de Uso y Aplicaciones
Las bases documentales son ideales para escenarios donde los datos cambian con frecuencia o no tienen una estructura fija.
Ejemplo 1: Tienda en línea
Cada producto puede tener características distintas:
1{ 2 "nombre": "Laptop", 3 "marca": "Dell", 4 "precio": 1200, 5 "especificaciones": { 6 "procesador": "Intel i7", 7 "ram": "16GB" 8 } 9}
1{ 2 "nombre": "Celular", 3 "marca": "Samsung", 4 "precio": 800, 5 "especificaciones": { 6 "pantalla": "6.4 pulgadas", 7 "camara": "108 MP" 8 } 9}
En bases SQL, esto sería más difícil porque cada producto tiene atributos diferentes.
Ejemplo 2: Redes Sociales
Cada usuario puede tener distintos datos en su perfil:
1{ 2 "usuario": "ana25", 3 "publicaciones": [ 4 "¡Me encanta programar!", 5 "Hoy aprendí sobre bases de datos NoSQL" 6 ] 7}
1{ 2 "usuario": "carlos30", 3 "publicaciones": [ 4 "Jugando con mi nuevo dron", 5 "Recomendaciones de libros?" 6 ] 7}