SQL or NoSQL without false dichotomiesSQL o NoSQL sin falsas dicotomías · V7
24 slides · 36 min · 2026-08-13language
ENES
theme
LightDark
view
TalkTable
brand
HanademiPlatzi
Physical limits vary more within NoSQL than between the SQL and NoSQL labels.
Surveys measure declared use, and their sample shifted from 89,184 to 65,437 responses between 2023 and 2024.
The final decision must test transactions, queries, scale, latency, and operations.
Los límites físicos varían más dentro de NoSQL que entre las etiquetas SQL y NoSQL.
Las encuestas miden uso declarado y su muestra cambió de 89.184 a 65.437 respuestas entre 2023 y 2024.
La decisión final debe probar transacciones, consultas, escala, latencia y operación.
The label “NoSQL” combines products with transaction caps of 100 to 500, consistency levels of 5 to 9, and size limits of 0.39 to under 2,048 MiB. Usage trends add context, not a verdict on fit.
La etiqueta «NoSQL» agrupa productos con límites transaccionales de 100 a 500, niveles de consistencia de 5 a 9 y límites de tamaño de 0,39 a menos de 2.048 MiB. Las tendencias de uso aportan contexto, no un veredicto sobre la idoneidad.
Let us start with a difference that usually disappears under the word NoSQL. DynamoDB caps an item at 0.39 MiB, MongoDB a document at 16 MiB, and Cassandra a value at under 2 GiB. Choosing between them also means choosing how large a unit of data can be.
Empecemos por una diferencia que suele desaparecer bajo la palabra NoSQL. DynamoDB limita un elemento a 0,39 MiB, MongoDB un documento a 16 MiB y Cassandra un valor a menos de 2 GiB. Elegir entre ellas también significa elegir qué tamaño puede tener una unidad de datos.
Before comparing technologies, look at who answered. The sample moved from 73,268 to 89,184 responses and then fell to 65,437. That is why these percentages describe declared use among participants, not market share.
Antes de comparar tecnologías, hay que mirar quién respondió. La muestra pasó de 73.268 a 89.184 respuestas y luego cayó a 65.437. Por eso estos porcentajes describen uso declarado entre participantes, no participación de mercado.
NoSQL presence does not arrive as a single dominant platform. MongoDB reaches 24.8%, Redis 20.0%, and Elasticsearch 16.7%. These are tools that can coexist because they solve different problems.
La presencia de NoSQL no llega como una sola plataforma dominante. MongoDB alcanza 24,8%, Redis 20,0% y Elasticsearch 16,7%. Son herramientas que pueden convivir porque resuelven problemas diferentes.
The conversation about NoSQL can sound like total substitution. But in January 2025, 7 of the top 10 systems in the DB-Engines ranking were primarily relational. The evidence points to coexistence, not a single victory.
La conversación sobre NoSQL puede sonar como una sustitución total. Pero en enero de 2025, 7 de los 10 primeros sistemas del ranking DB-Engines eran principalmente relacionales. La evidencia apunta a coexistencia, no a una victoria única.
A transactional test does not represent five operations with equal weight. In TPC-C, new orders are 45% and payments 43%, while the other 3 operations account for only 12%. Dominant load should guide evaluation.
Una prueba transaccional no representa cinco operaciones con el mismo peso. En TPC-C, los nuevos pedidos son 45% y los pagos 43%, mientras las otras 3 operaciones suman solo 12%. La carga dominante debe guiar la evaluación.
Even within NoSQL, the word transaction does not fix the same ceiling. DynamoDB supports 100 items, Cosmos DB 100 operations, and Firestore 500 writes per batch. Exact scope matters as much as the number.
Incluso dentro de NoSQL, la palabra transacción no fija un mismo techo. DynamoDB admite 100 elementos, Cosmos DB 100 operaciones y Firestore 500 escrituras por lote. El alcance exacto importa tanto como el número.
Start with a common misconception: calling any small test analytical. SSB has 13 queries, but TPC-DS reaches 99. Engine choice shifts when the test resembles the questions your business will actually ask.
Empiece con una confusión común: llamar analítica a cualquier prueba pequeña. SSB tiene 13 consultas, pero TPC-DS llega a 99. La elección del motor cambia cuando la prueba se parece a las preguntas que el negocio realmente hará.
The boundary between SQL and NoSQL is not fixed. MongoDB added $lookup first, then $graphLookup, and later $unionWith. That doesn't make all workloads equal, but it does change the question: it's no longer enough to say NoSQL can't join data.
La frontera entre SQL y NoSQL no es fija. MongoDB añadió primero $lookup, después $graphLookup y más tarde $unionWith. Eso no convierte todas las cargas en iguales, pero sí cambia la pregunta: ya no basta con decir que NoSQL no puede combinar datos.
The relational answer to documents wasn't to ignore them. PostgreSQL added JSON, then JSONB, then SQL/JSON paths. The sequence shows functional convergence, though it doesn't eliminate the design differences between a table with rules and a flexible document.
La respuesta relacional a los documentos no fue ignorarlos. PostgreSQL añadió JSON, luego JSONB y después rutas SQL/JSON. La secuencia muestra convergencia funcional, aunque no elimina las diferencias de diseño entre una tabla con reglas y un documento flexible.
The old saying goes that SQL scales only by buying a bigger machine. F1 offers a concrete counterimage: over 100 TB, tens of billions of rows, and hundreds of thousands of SQL requests per second. Distributed scale exists, though managing it adds coordination and cost.
La vieja frase dice que SQL escala solo comprando una máquina más grande. F1 ofrece una contraimagen concreta: más de 100 TB, decenas de miles de millones de filas y cientos de miles de solicitudes SQL por segundo. La escala distribuida existe, aunque administrarla añade coordinación y costo.
Five nines is a powerful promise, but not a guarantee without fine print. DynamoDB Global Tables and Cosmos DB advertise up to 99.999%, versus 99.995% in certain Atlas configurations. The difference reminds you to read the terms, regions, and contractual remedies.
Cinco nueves es una promesa poderosa, pero no es una garantía sin letra pequeña. DynamoDB Global Tables y Cosmos DB anuncian hasta 99,999%, frente a 99,995% en determinadas configuraciones Atlas. La diferencia recuerda que hay que leer las condiciones, las regiones y los remedios contractuales.
The database label changes, but standard redundancy looks the same. MongoDB uses 3 members, Cassandra a replication factor of 3, and Elasticsearch 3 eligible master nodes. High availability carries a common operational cost.
La etiqueta de la base cambia, pero la redundancia habitual se parece. MongoDB usa 3 miembros, Cassandra un factor de réplica de 3 y Elasticsearch 3 nodos maestros elegibles. La alta disponibilidad tiene una factura operativa común.
Una topología habitual de tres copias convierte la migración de una base de 10 TiB en 30 TiB de transferencia facturable antes de los gastos operativos.
Recovery is not an identical promise across services. DynamoDB reaches 35 days, while Cosmos DB offers 7 or 30 depending on the mode. Choosing a platform also fixes how far back you can recover.
La recuperación no es una promesa idéntica entre servicios. DynamoDB llega a 35 días, mientras Cosmos DB ofrece 7 o 30 según la modalidad. Elegir una plataforma también fija cuánto pasado puede recuperarse.
A graph benchmark does not test a single capability. LDBC SNB Interactive brings together 14 complex reads, 7 short reads, and 8 updates. The mix reminds you that specialization must be measured against real work.
Un benchmark de grafos no prueba una sola habilidad. LDBC SNB Interactive reúne 14 lecturas complejas, 7 lecturas cortas y 8 actualizaciones. La mezcla recuerda que la especialización debe medirse contra el trabajo real.
These enduring structures frame the 24-year arc of SQL graph evolution.
Estas estructuras perdurables enmarcan los 24 años de evolución de grafos en SQL.
SQL did not remain frozen against specialized models. It standardized recursive queries in 1999 and added property graph queries in SQL:2023. The functional boundary has shifted over 24 years.
SQL no se quedó congelado frente a los modelos especializados. Estandarizó las consultas recursivas en 1999 y añadió consultas de grafos de propiedades en SQL:2023. La frontera funcional se ha movido durante 24 años.
The SQL or NoSQL label does not resolve a technical decision. You must measure transactions, queries, scale, latency, and operations. The 5 axes convert brand preference into a testable comparison.
La etiqueta SQL o NoSQL no resuelve una decisión técnica. Hay que medir transacciones, consultas, escala, latencia y operación. Los 5 ejes convierten una preferencia de marca en una comparación comprobable.
The choice cannot be resolved with a label. Limits, transactions, queries, scale, availability, and operations reveal which design fits a real workload.
Key findings
Cockroach Labs reportó una prueba TPC-C no auditada con 2,1 millones de almacenes, cerca de 250 TB y 2.000 nodos. Cockroach Labs
Cassandra atendió en Facebook una carga de 150 nodos, 50 TB y más de 10.000 millones de escrituras diarias. Association for Computing Machinery
Jepsen observó actualizaciones perdidas en MongoDB 4.2.6 bajo patrones que read concern y write concern majority no hacían serializables. Jepsen
Si cada llamada tiene 0,1% de probabilidad independiente de ser lenta, 1, 10 y 100 llamadas elevan el riesgo a 0,1%, 1,0% y 9,5%. Association for Computing Machinery
DynamoDB admite 100 elementos por transacción, Cosmos DB 100 operaciones por lote transaccional y Firestore 500 escrituras por lote. Amazon Web Services
MongoDB incorporó $lookup en 3.2, $graphLookup en 3.4 y $unionWith en 4.4. MongoDB
MongoDB limita documentos BSON a 16 MiB, DynamoDB elementos a 400 KiB y Cassandra valores individuales a menos de 2 GiB. MongoDB
El artículo de F1 describió más de 100 TB, decenas de miles de millones de filas y cientos de miles de solicitudes SQL por segundo. VLDB Endowment
Bigtable fue descrito almacenando petabytes en miles de servidores y atendiendo más de 60 productos de Google. USENIX Association
Amazon describió servicios Dynamo con un objetivo de 300 milisegundos para al menos 99,9% de las solicitudes. Association for Computing Machinery
Cassandra documenta 9 niveles de consistencia, MongoDB 5 niveles de read concern y Cosmos DB 5 modelos de consistencia. Apache Software Foundation
The argument
Physical limits vary more within NoSQL than between the SQL and NoSQL labels.
Surveys measure declared use, and their sample shifted from 89,184 to 65,437 responses between 2023 and 2024.
NoSQL also offers transactions, though their operational limits range between 100 and 500 operations.
Analytical benchmarks grow from 13 queries in SSB to 99 templates in TPC-DS.
SQL incorporated documents and graphs, while MongoDB added operators to join and traverse relationships.
Distributed SQL exceeded 100 TB in F1, so horizontal scaling does not belong to one family alone.
A 99.999% SLA remains a conditional contract, with credits as remedy.
The final decision must test transactions, queries, scale, latency, and operations.
This research is published in English and Spanish. Ver en español
La investigación detrás de esta presentación
La elección no se resuelve con una etiqueta. Los límites, las transacciones, las consultas, la escala, la disponibilidad y la operación revelan qué diseño encaja con una carga real.
Hallazgos clave
Cockroach Labs reportó una prueba TPC-C no auditada con 2,1 millones de almacenes, cerca de 250 TB y 2.000 nodos. Cockroach Labs
Cassandra atendió en Facebook una carga de 150 nodos, 50 TB y más de 10.000 millones de escrituras diarias. Association for Computing Machinery
Jepsen observó actualizaciones perdidas en MongoDB 4.2.6 bajo patrones que read concern y write concern majority no hacían serializables. Jepsen
Si cada llamada tiene 0,1% de probabilidad independiente de ser lenta, 1, 10 y 100 llamadas elevan el riesgo a 0,1%, 1,0% y 9,5%. Association for Computing Machinery
DynamoDB admite 100 elementos por transacción, Cosmos DB 100 operaciones por lote transaccional y Firestore 500 escrituras por lote. Amazon Web Services
MongoDB incorporó $lookup en 3.2, $graphLookup en 3.4 y $unionWith en 4.4. MongoDB
MongoDB limita documentos BSON a 16 MiB, DynamoDB elementos a 400 KiB y Cassandra valores individuales a menos de 2 GiB. MongoDB