Backend, APIs y datos · Mixto

Bases de datos: elegir y no arrepentirse

En una línea: En la mayoría de los casos una base de datos relacional es la respuesta correcta, y cualquier otra elección necesita un motivo que puedas decir en una frase.

Por qué relacional por defecto

Consistencia, consultas flexibles, restricciones que evitan datos rotos, y herramientas maduras. La mayor parte de lo que se considera una “limitación relacional” se resuelve con un esquema correcto e índices.

Los almacenes de documentos sirven cuando la estructura de verdad varía entre registros; los de clave-valor para caché y estado transitorio; los de series temporales para métricas. Son añadidos, no un reemplazo.

Decisiones que fijan el futuro

Claves. Estables e inmutables; no uses información de negocio como clave.

Restricciones. Claves foráneas, unicidad y no vacío. Una restricción en el almacén vence a una comprobación en el código: atrapa también el camino que no pensaste.

Tiempos. Guarda en una zona horaria consistente y explícita, con una hora de creación y de actualización por registro.

Qué rompe de verdad los sistemas

Consultas en bucle que crean cientos de llamadas en vez de una, un índice ausente en una columna por la que filtras, y transacciones largas que bloquean. Los tres aparecen solo con volumen real.

En profundidad

Activa el registro de consultas lentas desde el primer día y revísalo cada semana. Y cuando añadas un índice, mide: un índice innecesario ralentiza las escrituras y ocupa espacio, y no todo plan de consulta mejora con él.