Diez lecciones de diseño de bases de datos en una startup

Descubre 10 lecciones de diseño de bases de datos para construir sistemas escalables y seguros: normalización, migraciones, tipos adecuados y buenas prácticas.

1 sept 2025 • 4 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Hola. El abismo ha sido intenso estas semanas, pero volvemos con una nueva entrada. Recuerdo cuando diseñé mi primera base de datos hace año y medio. Cometí de todo: malas prácticas, nombres confusos y decisiones que luego dolieron. Así aprende una persona ingeniera. Hoy, trabajando en una startup, el sistema ya no va en mi contra. Se trata de buenas prácticas, escalabilidad y convenciones claras. Tras muchos errores y horas, estas son las 10 lecciones de diseño de bases de datos que aprendí a la fuerza.

1. Evita abusar de los enums Un enum restringe una columna a un conjunto fijo de valores y cualquier cambio obliga a migraciones de esquema. Para listas que pueden crecer, usa tablas de referencia lookup tables con claves foráneas y gestiona altas y bajas sin tocar el esquema principal. En el backend, mantén un diccionario cargado desde esa tabla en el arranque para validar y mantener una única fuente de la verdad. Evita arrays estáticos en código que rompen la normalización y duplican reglas.

2. Diseña para el negocio, no por conveniencia Modela conceptos reales con tipos adecuados. Un cumpleaños es una fecha, no tres enteros. Usa DATE, no fragmentos. Elige tipos que reflejen el significado de los datos y simplifiquen reglas de negocio.

3. La consistencia importa Convenciones estables reducen errores. Si eliges snake case usa user_id en todas partes, no mezcles con userId. Mantén patrones de claves primarias, claves foráneas, índices y nombres uniformes en todo el esquema.

4. Todo debe tener un propósito Evita el sobreingenierizado. No añadas columnas por si acaso ni estructuras que nadie usa. Cada tabla, columna e índice debe responder a una necesidad actual del negocio. Menos complejidad, más rendimiento y claridad.

5. No delegues la autenticación a la base de datos La base de datos almacena datos, no es tu servidor de identidad. No acoples la seguridad del sistema a políticas complejas como RLS para autenticación central. La autenticación, autorización y el hash de contraseñas deben vivir en la capa de aplicación para evitar bloqueos de proveedor y facilitar cambios tecnológicos.

6. La base de datos no debe validar la lógica de negocio Deja a la base de datos validaciones fundamentales como not null, unique y claves referenciales. Reglas de negocio como rangos, estados transitorios o cálculos complejos deben residir en servicios de aplicación, donde pueden versionarse, probarse y evolucionar con menor fricción.

7. Separa staging de producción Nunca pruebes directamente en producción. Mantén entornos aislados para validar cambios, migraciones y cargas. Gestiona credenciales y endpoints con un gestor seguro como Vault y aplica políticas de acceso mínimas necesarias.

8. Nunca des por sentada la escalabilidad Índices en claves foráneas, columnas de filtro y consultas críticas son obligatorios si esperas crecer. Diseña migraciones seguras: cuando agregues columnas en sistemas en vivo, hazlas anulables o con valor por defecto para evitar fallos en escrituras concurrentes. Piensa a largo plazo y documenta estructuras semiestructuradas. Si usas JSON o JSONB, define y comparte un contrato con especificaciones formales tipo OpenAPI para que el equipo mantenga coherencia y evite pérdidas de control del esquema.

9. Usa las estructuras de datos adecuadas El tipo correcto mejora claridad y rendimiento. BOOLEAN, DATE y JSONB tienen su lugar. JSONB es ideal para datos semiestructurados con consultas e indexación eficientes. No abuses de JSONB para todo; cuando un atributo se vuelve estable y crítico, promuévelo a columna con índice.

10. Elige UUID frente a auto increment Los identificadores secuenciales se filtran con facilidad, son predecibles y complican entornos distribuidos. Los UUID son únicos de forma global, evitan colisiones entre servicios y reducen riesgos de enumeración de recursos en APIs como ruta ejemplo api usuarios 1, api usuarios 2. En Postgres puedes generar UUID en base de datos con funciones nativas y mantener independencia entre productores de datos.

Conclusión. El diseño de bases de datos es un gran maestro. Los errores duelen más en producción, pero justamente ahí se forja la maestría. Como en Dark Souls, no mejoras esquivando jefes, sino enfrentándolos, aprendiendo patrones y superándolos. Estas diez lecciones son tu plan de batalla.

En Q2BSTUDIO somos una empresa de desarrollo de software que crea aplicaciones a medida y software a medida con foco en escalabilidad, ciberseguridad y calidad. Si buscas un aliado para llevar tu plataforma a producción, integrar servicios cloud aws y azure o modernizar tu arquitectura de datos, podemos ayudarte. Consulta nuestro servicio de desarrollo de aplicaciones a medida y nuestra experiencia desplegando en servicios cloud AWS y Azure.

Además, impulsamos proyectos de inteligencia artificial e ia para empresas con modelos, agentes IA y automatización inteligente, incorporamos ciberseguridad desde el inicio con prácticas de pentesting, y habilitamos analítica avanzada con servicios inteligencia de negocio y cuadros de mando en power bi. Si necesitas acelerar la toma de decisiones, integrar datos o crear asistentes inteligentes para tu operativa, nuestro equipo puede convertir esas metas en realidad.

Nos vemos en la próxima entrada. Que el abismo no te consuma y que tus esquemas estén siempre optimizados, seguros y listos para crecer.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.