NoSQL · Modelos de datos · Comparativa SQL
NoSQL básico: modelos, comparación con SQL y cuándo usar cada uno
NoSQL no es un único tipo de base de datos y tampoco es un sustituto universal de SQL. Es una familia de modelos pensada para casos donde el modelo relacional no encaja con comodidad: documentos flexibles, datos distribuidos a gran escala, accesos rápidos por clave o relaciones muy conectadas.
Qué ha cambiado en el diseño NoSQL actual
Los sistemas relacionales escalan horizontalmente en más escenarios, mientras que bases documentales y distribuidas incorporan transacciones y motores de consulta más ricos. La etiqueta ya no determina por sí sola consistencia o escalabilidad: hay que comparar producto, despliegue y carga concretos.
- Define patrones de acceso, límites transaccionales y objetivos de recuperación antes de elegir modelo.
- Prueba índices y peores consultas con una distribución de datos realista, no solo la latencia media.
- Incluye restauración, evolución de esquema, observabilidad, fallo regional y coste operativo.
- Usa persistencia políglota solo si compensa la complejidad de sincronización y gobierno.
Respuesta rápida
Usa una base relacional cuando el dominio dependa de consistencia fuerte, joins, informes tabulares y un esquema estable. Considera NoSQL cuando el patrón de acceso, la escala o la forma del dato encaje mejor con un modelo clave-valor, documental, columnar o de grafos.
Los cuatro modelos NoSQL principales
Clave-valor
Guarda un valor detrás de una clave. Útil para sesiones, cachés, contadores y búsquedas directas rápidas.
Documental
Guarda documentos similares a JSON. Útil cuando la aplicación lee y escribe agregados completos.
Columnar
Optimizado para escrituras distribuidas y consultas diseñadas alrededor de patrones de acceso conocidos.
Grafos
Diseñado para relaciones. Útil en recomendaciones, redes, rutas de fraude y análisis de dependencias.
SQL vs NoSQL: la decisión práctica
Error habitual
El error no es elegir SQL o NoSQL. El error es elegir base de datos antes de saber cómo la aplicación va a leer, escribir y evolucionar sus datos. En NoSQL, el modelado parte de las consultas y de los límites del agregado, no solo de las entidades.
