Modelo relacional vs no relacional
Brandon M. · 12 de mayo de 2026
Los dos grandes
Pues así como lo oyes, elegir entre un modelo relacional o no relacional es una de las decisiones mas importantes, libertad total o control total? aunque actualmente ya no es tanto rollo, igual te recomiendo darle una leída al articulo donde explico lo de los modelos de datos.
1- Relacional (SQL)
El de toda la vida pá, esta basado en tablas, se puede pensar como el tradicional, el que nos permite tener todos bien estructurado con relaciones y demás, pero como todo tienes su ventajas y desventajas:
Ventajas
- Es casi imposible que los datos se corrompan. Si haces una transferencia bancaria, el modelo asegura que el dinero salga de una cuenta y llegue a la otra sin errores.
- Lenguaje Estándar (SQL)
- Relaciones Complejas, por ejemplo con Ajoruto necesito saber los movimientos del usuario, con su respectiva categoría con s respectiva cartera, etc.
Desventajas
- Si quieres añadir un campo/datos nuevo que no estaba planeado, es un rollo we, bueno también si es un sistema chico sin pex, pero si es un sistema grande es lento y hay riesgo.
- Para manejar más datos, normalmente necesitas un servidor más potente y eso sale caro.
- Velocidad en datos masivos, si tienes miles de millones de registros, las relaciones (JOINs) pueden volverse lentas, si no tienes buena infra.
2- No relacional (No SQL)
Ufas, básicamente libertad total, con el costo que conlleva la libertad, el tema con estos modelos es que son rápidos, pero acá a lo bestia, por dar ejemplo puede ser desde FireBase hasta Obsidian (La inspo de esta pagina), ojo no digo que vas a usar Obsidian como una BD productiva, pero si te digo que se podría XD
Ventajas
- Flexibilidad, esto es lo principal, prácticamente eso tu puedes tener lo que quieras, por ejemplo guardar usuarios con o sin nombre, o con lo que quieras al sistema le da igual.
- Escalabilidad Horizontal, por su naturaleza están diseñados para crecer "hacia los lados". Si necesitas más potencia, solo conectas más servidores baratos en lugar de comprar uno gigante.
- Velocidad de Lectura, Es rápido trust me bro.
Desventajas
- Consistencia Eventual, por ejemplo si un usuario cambia su foto, es posible que un amigo la vea actualizada un segundo después que otro. No es ideal para sistemas financieros críticos.
- Duplicidad de Datos, osea ta chido pero a que costo? para ganar velocidad, es común que se repita información en varios lugares, lo que hace que sea más difícil actualizar datos en masa.
- Lenguajes Propietarios, cada base de datos NoSQL tiene su propia forma de consultar (MongoDB es distinto a Cassandra o Neo4j) y pues ta feo si quieres algo consistente.
Y tons?
Pues depende pá, en realidad, depende prácticamente de tu tipo de sistema y que vas a guardar, un ejemplo que te podría dar en mi caso con Ajoruto o con Zontle, es que aquí no tendría propósito crear algo no relacional, que si que lo exporto todo en JSON sin embargo todo tiene su relación, pero por ejemplo si fuera a crear próximamente una aplicación de notas me gustaría algo menos relacional, algo tipo Obisian wink wink.
Ademas las ventajas actuales es que ahora es mas sencillo crear un combinación de ambas, que ojito ese es como el "estándar" si vas a crear algo grande acá super grande, no puedes esperar que todo sea relacional.
Referencias
- Amazon Web Services. (s. f.-a). ¿Cuál es la diferencia entre las bases de datos relacionales y las no relacionales? Amazon Web Services, Inc. https://aws.amazon.com/es/compare/the-difference-between-relational-and-non-relational-databases/