Café y Código

2. MongoDB: documentos y BSON 🍃

Colección = conjunto de documentos

En MongoDB no defines tablas con columnas fijas como en SQL. Agrupás datos en colecciones; cada fila lógica es un documento, normalmente en formato parecido a JSON.

Ejemplo de documento que podría vivir en la colección usuarios:

Ejemplo de documento
JSON
1 {
2 "_id": ObjectId("..."),
3 "nombre": "Ana",
4 "email": "ana@ejemplo.com",
5 "preferencias": {
6 "tema": "oscuro",
7 "notificaciones": true
8 },
9 "cursos": ["nosql", "java"]
10 }

Los campos pueden ser anidados y las listas (arrays) son ciudadanos de primera clase: eso encaja con cómo ya pensás en JavaScript u otros lenguajes.

BSON, no solo JSON

MongoDB almacena internamente en BSON (Binary JSON): compatible con JSON pero con tipos extra (fechas, ObjectId, binario, etc.) y eficiencia en disco y red.

El _id es la clave primaria del documento; si no lo enviás, el servidor puede generar un ObjectId único.

CRUD en pocas palabras

Todo lo que vas a hacer con una colección encaja en cuatro letras: CRUDcrear documentos, leerlos con filtros, actualizarlos (campos o el documento entero) y borrarlos. En MongoDB eso se traduce en métodos como insertOne, find, updateOne y deleteOne, siempre apoyados en un filtro en formato documento JSON.

La siguiente lección desarrolla cada operación con ejemplos en mongosh.

Herramientas para practicar

  • MongoDB Atlas: cluster gratuito en la nube y consola web.
  • mongosh: shell oficial para conectar a tu base y ejecutar comandos.
  • Compass: cliente gráfico para explorar colecciones y probar consultas.
Ko-fi
Donaciones
Apoyá cafeycodigo con un café en Ko-fi. Colaboradores: insignia, muro y zona exclusiva.