MongoDB es la base de datos NoSQL documental más conocida. Apareció en 2009 y popularizó la idea de almacenar datos como documentos JSON (BSON, en realidad: JSON binario con tipos extendidos), agrupados en colecciones dentro de bases de datos, sin esquema fijo a nivel de documento. Esa flexibilidad la convirtió en favorita de startups y prototipos durante la primera década de los 2010.
Más allá del modelo documental, MongoDB ofrece índices secundarios (incluidos compuestos, geoespaciales y de texto), un pipeline de agregación potente ($match, $group, $lookup, $unwind, $project), replicación nativa con failover automático, sharding horizontal para escalar escrituras, y desde la versión 4.0 transacciones ACID multi-documento que cerraron una de sus críticas históricas. MongoDB Atlas, la versión gestionada en cloud, simplifica enormemente la operativa.
El debate eterno es Mongo vs Postgres. PostgreSQL ha incorporado tipo JSONB con índices GIN y operadores muy ricos, lo que hace que para muchos casos "necesito documentos flexibles" Postgres sea suficiente sin renunciar a SQL y relaciones. Mongo gana cuando el modelo realmente es de documentos jerárquicos, cuando el sharding es un requisito real desde el principio, o cuando el equipo ya tiene mucha experiencia con el ecosistema.
En 10Code usamos MongoDB en proyectos donde el esquema cambia con frecuencia (productos en discovery), donde modelamos documentos enriquecidos (perfiles, configuraciones, eventos analíticos) o donde el cliente ya tiene una base Mongo en producción. Para CRUD relacional clásico seguimos prefiriendo Postgres. La elección depende del modelo de datos, no de la moda.
En 10Code llevamos más de una década aplicando estas tecnologías a productos reales. Si quieres comentarnos tu caso, escríbenos y te respondemos personalmente.
Hablar con un ingeniero