Contenido del curso
Proyecto
Validación de datos
Relaciones
- 12

Relaciones en Bases de Datos NoSQL: Embebidas y Referenciales
10:29 min - 13

Relaciones uno a uno embebidas en MongoDB
10:09 min - 14

Relaciones uno a uno con $lookup en MongoDB
09:52 min - 15

Relaciones Uno a Muchos: Embebidas y Referenciadas en Bases de Datos
10:46 min - 16

Relaciones Uno a Muchos con Referencias en Bases de Datos
15:19 min - 17

Relaciones Muchos a Muchos en Bases de Datos: Tiendas y Productos
14:31 min - 18

Relaciones Muchos a Muchos en Bases de Datos Documentales
07:04 min
Bonus: patrones
Próximos pasos
Metodología de modelado de datos en MongoDB
Resumen
El modelado de datos en MongoDB no se trata solo de organizar entidades, sino de diseñar pensando en las restricciones reales del sistema donde correrá tu base de datos. Si trabajas con bases NoSQL o relacionales y quieres una arquitectura sólida, esta metodología en tres fases te ayuda a tomar decisiones técnicas sin perder de vista las reglas de negocio.
¿Por qué las restricciones del sistema condicionan tu modelado?
Nada es infinito en computación. Y eso lo cambia todo cuando diseñas una base de datos.
Piensa en una analogía simple: respirar al aire libre versus bucear. En la superficie, el oxígeno sobra. Bajo el agua, cada bocanada cuenta. Lo mismo pasa con tus recursos de cómputo: a veces tienes abundancia y otras veces debes administrar con cuidado.
¿Dónde almacenar la información según la velocidad que necesitas?
La elección del medio de almacenamiento depende del tipo de consulta que harás:
- Disco mecánico: ideal para información histórica que solo necesitas guardar a lo largo del tiempo.
- Disco de estado sólido: mejor cuando necesitas consultas rápidas y frecuentes.
- Memoria RAM: la opción más veloz, pero también la más costosa.
Si pusieras todo en RAM, el costo se dispararía. Por eso, la decisión de dónde vive cada dato debe responder a cómo se va a usar.
¿Cuál es el tamaño máximo de un documento en MongoDB? Cada documento en MongoDB tiene un peso máximo de 16 MB. Por eso existen patrones y buenas prácticas de relacionamiento que evitan llegar a ese límite.
¿Cómo afecta la latencia a tu base de datos?
La ubicación física de tus servidores impacta directamente en la experiencia del usuario. Si tu usuario está en Latinoamérica y el servidor en Europa, su petición literalmente tiene que viajar hasta allá.
Ahí entran los CDN (content delivery network) y servicios como Mongo Atlas, que permiten replicar la base de datos en clústeres distribuidos por el mundo. Una copia en Brasil o Estados Unidos reduce el tiempo de viaje del request y mejora la velocidad percibida.
¿Cuál es la metodología para modelar datos en MongoDB?
El proceso se divide en tres fases que te llevan desde entender el negocio hasta optimizar el rendimiento [2:30].
- Requerimientos y escenarios del sistema.
- Diagrama entidad-relación.
- Aplicación de patrones de diseño.
Cada fase considera cuatro actores o aspectos: los escenarios del modelo de negocio, los expertos en el tema, el sistema actual y tú como DB admin o experto en modelado.
¿Qué papel juega cada actor en el modelado?
Los escenarios definen el contexto: no es lo mismo modelar un carrito de compras de e-commerce que sensores de Internet of Things. La forma de leer y escribir cambia por completo.
Los expertos del negocio aportan el conocimiento del dominio. Tú dominas el modelado, pero necesitas a alguien que entienda cómo funciona un comercio en línea o cómo se comportan los sensores climáticos.
El sistema actual también cuenta. Aunque empieces desde cero, muchas compañías gestionan sus datos en Excel, y entender cómo resuelven hoy su problema te ayuda a diseñar mejor.
¿Qué es el workload y por qué importa en MongoDB?
El workload, o carga de trabajo, es el documento donde plasmas las operaciones más comunes, las consultas frecuentes, el tamaño de datos esperado y las suposiciones iniciales del sistema.
¿Qué es el workload en modelado de datos? Es el resultado de combinar escenarios, expertos del tema y el sistema actual. Identifica qué operaciones son más comunes, si se escribe más de lo que se lee, y qué consultas debes optimizar.
Es un proceso iterativo. Tus primeras suposiciones no están escritas en piedra: van evolucionando conforme el sistema crece y aprendes más del comportamiento real.
¿Cómo se identifican las relaciones entre entidades?
En esta fase identificas entidades, sus atributos y las restricciones que las acompañan. Aquí aparece una decisión clave en bases NoSQL: embeber o referenciar.
- Embeber: incluyes los datos relacionados dentro del mismo documento.
- Referenciar: guardas un identificador que apunta a otro documento.
Esta batalla entre embeber y referenciar define gran parte del rendimiento y la escalabilidad de tu base de datos. Cada estrategia tiene contextos donde brilla y otros donde se vuelve un problema.
¿Cuándo aplicar patrones de diseño en MongoDB?
Los patrones son la fase final y, en muchos casos, opcional. Una vez tienes tu diagrama entidad-relación, evalúas si aplicar patrones específicos puede mejorar el rendimiento o preparar tu base para escenarios particulares.
¿Los patrones son obligatorios al modelar en MongoDB? No. Son opcionales y se aplican cuando necesitas optimizar consultas o adaptar tu modelo a casos de uso específicos. El workload y las relaciones siempre son la base.
Los tres elementos finales (workload, relaciones y patrones) confluyen en el diseño final, ese que ya puedes llevar a la aplicación en producción. Modelar bien desde el inicio te ahorra refactors costosos más adelante.
¿Qué tipo de proyecto estás modelando ahora mismo? Cuéntanos en los comentarios cómo estás resolviendo la decisión entre embeber o referenciar.