DICCIONARIO · M

Mongo

Mongo es el nombre corto de MongoDB, una base de datos NoSQL orientada a documentos que guarda la información en documentos tipo JSON (en formato binario BSON) en lugar de en tablas. Es flexible, escala en horizontal y es muy usada en aplicaciones web y móviles. Desde 2018 usa licencia SSPL y tiene una versión en la nube, MongoDB Atlas.

Germán Gutiérrez Escrito por Germán Gutiérrez 6 min de lectura
Ficha rápida
Tipo
Base de datos NoSQL orientada a documentos
Primera versión
11 de febrero de 2009, desarrollada por 10gen (hoy MongoDB, Inc.)
Origen del nombre
De «humongous», «gigantesco» en inglés coloquial
Formato de datos
Documentos BSON (JSON binario) agrupados en colecciones
Licencia
Server Side Public License (SSPL) para las versiones publicadas desde el 16 de octubre de 2018; no aprobada por la OSI
Servicio en la nube
MongoDB Atlas (desde 2016), en AWS, Google Cloud y Microsoft Azure

≡En resumen

  • MongoDB guarda los datos en documentos flexibles, parecidos a JSON, en lugar de en filas y columnas.
  • No necesita un esquema fijo: cada documento de una colección puede tener campos distintos.
  • Escala en horizontal con sharding y ofrece alta disponibilidad con conjuntos de réplicas.
  • Desde la versión 4.0 admite transacciones ACID de varios documentos.
  • Su licencia SSPL permite usarla gratis en tus proyectos, pero limita ofrecerla como servicio a terceros.

01 ¿Qué es Mongo (MongoDB)?

La desarrolló la empresa 10gen, que publicó la primera versión el 11 de febrero de 2009 y en 2013 pasó a llamarse MongoDB, Inc. El nombre viene de humongous, «gigantesco», por su objetivo de manejar grandes volúmenes de datos. Si necesitas el contexto general, en el diccionario tienes qué es una database o base de datos y los tipos que existen.

02 Cómo funciona MongoDB: documentos, colecciones y BSON

01

Documento

La unidad de datos, equivalente a una fila. Es un objeto con campos y valores que puede anidar otros objetos y listas.

02

Colección

Un grupo de documentos, equivalente a una tabla. No obliga a que todos tengan los mismos campos.

03

BSON

La representación binaria de JSON que usa MongoDB. Añade tipos como fechas, enteros de 64 bits o identificadores ObjectId.

04

Índices

Aceleran las consultas por uno o varios campos, igual que en una base de datos relacional.

05

Conjuntos de réplicas

Varias copias sincronizadas de los datos: si cae el servidor principal, otro toma el relevo.

06

Sharding

Reparte los datos entre varios servidores para crecer en horizontal cuando un solo equipo no basta.

Así se ve un documento de cliente: { "nombre": "Ana", "email": "ana@ejemplo.es", "direcciones": [ { "ciudad": "Valencia" } ] }. Quien conozca el formato JSON lo entiende a la primera, y por eso MongoDB encaja tan bien con aplicaciones JavaScript y con las API REST, que ya intercambian datos en ese formato. Las consultas se escriben también como objetos, por ejemplo db.clientes.find({ "direcciones.ciudad": "Valencia" }), desde el shell actual, mongosh, o desde los drivers oficiales para cada lenguaje.

03 MongoDB vs bases de datos SQL

Aspecto MongoDB SQL (MySQL, PostgreSQL)
Modelo de datos Documentos en colecciones Filas en tablas con columnas fijas
Esquema Flexible; se puede validar de forma opcional Definido de antemano
Relaciones Datos anidados o referencias; $lookup para uniones JOIN entre tablas con claves foráneas
Escalado Horizontal nativo con sharding Vertical sobre todo; el horizontal requiere más trabajo
Transacciones ACID en varios documentos desde la versión 4.0 ACID desde siempre
Lenguaje de consulta API de consultas y pipeline de agregación SQL estándar
Encaja mejor en Catálogos variados, contenidos, eventos, apps móviles, prototipos Contabilidad, facturación, datos muy relacionados
Diferencias entre MongoDB y una base de datos relacional como MySQL o PostgreSQL

04 ¿Para qué sirve MongoDB? Casos de uso

  • ✓Catálogos de productos con atributos distintos por categoría (tallas, voltajes, ingredientes).
  • ✓Gestores de contenidos y apps con perfiles de usuario que cambian con el tiempo.
  • ✓Backend de aplicaciones móviles y web que intercambian JSON con el frontend.
  • ✓Registro de eventos, logs y datos de sensores (IoT) con gran volumen de escritura.
  • ✓Prototipos y MVP en los que el modelo de datos todavía no está cerrado.
  • ✓Búsqueda vectorial para aplicaciones de IA, disponible en MongoDB Atlas.

Es habitual verla en stacks JavaScript como MEAN o MERN (MongoDB, Express, Angular o React y Node.js). En nuestros proyectos de desarrollo de aplicaciones web a medida la elegimos cuando el modelo de datos lo justifica, y la combinamos con bases de datos relacionales cuando la parte de facturación o de informes lo pide.

05 Licencia de MongoDB: SSPL, Community y Enterprise

Hasta 2018, MongoDB Community Server se distribuía con licencia AGPL. Todas las versiones publicadas desde el 16 de octubre de 2018, incluidos los parches de versiones anteriores, usan la Server Side Public License (SSPL), creada por la propia MongoDB. La SSPL no está aprobada por la Open Source Initiative, así que técnicamente MongoDB ya no se considera software de código abierto.

06 ¿Qué es MongoDB Atlas y cómo usarlo en la nube?

MongoDB Atlas es el servicio gestionado de MongoDB en la nube, lanzado en 2016. La empresa se encarga de instalar, actualizar, replicar y hacer copias de seguridad de la base de datos, que se despliega en AWS, Google Cloud o Microsoft Azure, en la región que elijas (también en Europa, algo importante para el RGPD). Además incluye búsqueda de texto completo y búsqueda vectorial.

Plan Precio Para qué
Free 0 $, con 512 MB de almacenamiento Aprender y prototipos
Flex Desde 0,011 $/hora, con un máximo de 30 $/mes Proyectos pequeños con tráfico variable
Dedicated Desde 0,08 $/hora (clúster M10, unos 57 $/mes) Producción, con recursos reservados y escalado
Planes de MongoDB Atlas según la web de MongoDB (septiembre de 2026; los precios pueden cambiar)
  1. 1

    Crea la cuenta y el clúster

    Elige proveedor de nube, región y plan. El gratuito basta para empezar.

  2. 2

    Configura el acceso

    Crea un usuario de base de datos y limita las IP que pueden conectarse. Nunca dejes el acceso abierto a cualquier dirección.

  3. 3

    Conecta tu aplicación

    Copia la cadena de conexión y úsala en el driver de tu lenguaje o en mongosh.

  4. 4

    Activa copias y alertas

    Revisa la política de copias de seguridad y las alertas de uso antes de pasar a producción.

07 Seguridad y buenas prácticas con MongoDB

  • ✓Activa siempre la autenticación y no expongas el puerto de MongoDB a internet.
  • ✓Aplica las actualizaciones de seguridad de tu rama en cuanto se publiquen.
  • ✓Diseña el esquema según cómo se leen los datos, no copiando tablas SQL.
  • ✓Crea índices para las consultas frecuentes y revisa las lentas con explain().
  • ✓Usa validación de esquema en las colecciones críticas para evitar datos incoherentes.
  • ✓Programa copias de seguridad y prueba a restaurarlas.

Si estás construyendo una app y dudas entre MongoDB y una base de datos relacional, nuestro equipo de desarrolladores de aplicaciones puede ayudarte a elegir el stack según tus datos, tu presupuesto y tu plan de crecimiento.

Preguntas frecuentes sobre Mongo

Es el nombre corto de MongoDB, una base de datos NoSQL que guarda la información en documentos con estructura tipo JSON en lugar de en tablas.

La edición Community se puede usar gratis con licencia SSPL, y MongoDB Atlas tiene un plan gratuito de 512 MB. La edición Enterprise y los planes superiores de Atlas son de pago.

Es NoSQL: no usa tablas ni el lenguaje SQL, sino documentos BSON y su propia API de consultas y agregación.

Ya no según la definición de la OSI. Desde el 16 de octubre de 2018 usa la licencia SSPL, que permite ver y modificar el código pero restringe ofrecerlo como servicio a terceros.

MySQL es relacional, con tablas y esquema fijo; MongoDB guarda documentos flexibles y escala en horizontal. MySQL encaja mejor con datos muy relacionados y MongoDB con datos variables.

Es el servicio gestionado de MongoDB en la nube, disponible en AWS, Google Cloud y Azure, en el que la empresa se ocupa de la infraestructura, las réplicas y las copias.

Para catálogos de productos, gestores de contenidos, backends de apps web y móviles, registro de eventos y aplicaciones de IA con búsqueda vectorial.

Fuentes consultadas

Germán Gutiérrez

Sobre el autor

Germán Gutiérrez

Development Manager en appyweb

Dirige el equipo de desarrollo de appyweb: aplicaciones web y móviles, SaaS, integraciones y arquitectura de software.

Ver perfil en LinkedIn ↗

Términos relacionados

Ver todos los términos →
D Database Una database (base de datos, en español) es un conjunto organizado de datos almacenado de forma electrónica y gestionado por un software llamado SGBD, que permite guardarlos, consultarlos y actualizarlos con rapidez. Está detrás de casi cualquier aplicación: una tienda online, un CRM o una app bancaria dependen de una base de datos para funcionar. J JSON JSON (JavaScript Object Notation) es un formato de texto ligero e independiente del lenguaje para intercambiar datos estructurados, basado en pares nombre-valor y listas ordenadas. Está normalizado en el RFC 8259 y el ECMA-404, y es el formato habitual de las API web, los archivos de configuración y los datos estructurados JSON-LD. M MySQL MySQL es un sistema de gestión de bases de datos relacionales (SGBD) de código abierto que guarda la información en tablas relacionadas y se consulta con el lenguaje SQL. Creado en 1995 y propiedad de Oracle desde 2010, es la base de datos de WordPress y de millones de webs, tiendas online y aplicaciones. A API REST Una API REST es una interfaz de programación que sigue el estilo de arquitectura REST (Representational State Transfer): expone los datos como recursos identificados por URLs y permite leerlos o modificarlos con los métodos estándar de HTTP, sin guardar estado entre peticiones. Es el modelo más usado para conectar webs, apps móviles y servicios en la nube. C Cloud Hosting El cloud hosting (alojamiento en la nube) es un tipo de hosting en el que una web o aplicación se ejecuta sobre recursos virtualizados de una red de servidores de un proveedor, en lugar de sobre una única máquina física. Permite ampliar o reducir potencia según la demanda y pagar por uso, con más disponibilidad que un hosting tradicional. M Modelos de IA locales Un modelo de IA local es un modelo de lenguaje de pesos abiertos que se ejecuta en tu propio ordenador o servidor, sin enviar los datos a la nube de un proveedor. Se usan con herramientas como Ollama, LM Studio o llama.cpp. Ganan en privacidad y control, pero suelen rendir menos que los grandes modelos en la nube como Claude.

Cuéntanos tu proyecto. Te respondemos en 48 h.

Auditoría gratuita de IA, campañas, web y SEO, con prioridades y cifras reales de tu negocio.

✓ Sin compromiso ✓ Respuesta en 48 h laborables ✓ Un consultor senior, no un bot
WA WhatsApp