No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso de Base de Datos NoSQL

Curso de Base de Datos NoSQL

Adán Figueroa Jiménez

Adán Figueroa Jiménez

Uso de la Consola de MongoDB: Creación de Datos con insertOne e insertMany

5/17
Recursos

Explora las poderosas capacidades de inserción en MongoDB y cómo maximizar su eficiencia. Aprenderás a usar comandos para insertar datos de manera efectiva y entenderás las implicaciones en el rendimiento del clúster.

¿Cómo insertar documentos en MongoDB desde la terminal de Compass?

En Compass, accede a la terminal mongush para insertar comandos de MongoDB. Puedes usar el intérprete de JavaScript, lo que te permite crear variables y funciones para generar datos aleatorios. Primero, selecciona la base de datos con use, luego usa db.nombre_de_tu_colección.insert para insertar documentos.

¿Qué ventajas ofrece la flexibilidad de la estructura de documentos en MongoDB?

MongoDB permite insertar documentos con diferentes estructuras, una gran ventaja para startups o proyectos con cambios frecuentes en el esquema de datos. Por ejemplo, puedes tener un documento con un campo name y otro con nombre, permitiendo adaptaciones rápidas sin complicaciones.

¿Cómo insertar múltiples documentos simultáneamente?

Usa insertMany para insertar varios documentos a la vez. Esto se logra creando un array de objetos JSON:

db.users.insertMany([
  { name: "Raúl", role: "admin" },
  { name: "Samanta", age: 25 }
]);

¿Qué consideraciones de rendimiento debes tener al insertar documentos?

Cada escritura afecta el rendimiento del disco (IOPS). Insertar documentos uno por uno puede generar cuellos de botella. Es mejor usar insertMany para insertar varios documentos de una vez, optimizando las operaciones de entrada y salida.

¿Cómo crear una función en JavaScript para insertar documentos aleatorios?

Puedes crear una función en JavaScript para automatizar la inserción de documentos con datos aleatorios:

function insertRandomUsers() {
  const roles = ["admin", "user", "editor"];
  const names = ["Ana", "Raúl", "Samanta", "Carlos"];
  const users = [];

  for (let i = 0; i < 10; i++) {
    const user = {
      name: names[Math.floor(Math.random() * names.length)],
      role: roles[Math.floor(Math.random() * roles.length)],
      age: Math.floor(Math.random() * 50) + 20
    };
    users.push(user);
  }

  db.users.insertMany(users);
}
insertRandomUsers();

Aportes 5

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Comandos: db.users.insertOne({"name":"Ana"}) db.users.insertOne({"nacionality":"Mexican"}) db.users.insertMany (\[{"name": "Raul", "rol":\["admin"]},{"name":"Samanta",edad: 28}])
use mi\_base\_de\_datos // Cambia al nombre de tu base de datos // Crear un array de 100 documentos const usuarios = \[]; for (let i = 0; i < 100; i++) { usuarios.push({ nombre: `Usuario${i + 1}`, apellido: `Apellido${i + 1}`, rol: i % 2 === 0 ? \["admin", "analytics"] : \["user", "editor"], fecha\_nacimiento: new Date(1990, i % 12, i % 28 + 1), edad: 34 }); } // Insertar los 100 documentos en la colección 'usuarios' db.usuarios.insertMany(usuarios);
Mi código para insertar usuarios random, listo para copiar y pegar en MONGOSH: ```js const users = []; const roles = ["admin","user","developer"]; function randomNumber(max) { return (Math.floor(Math.random() * max)) + 1; } function generateRandomUsers(numberOfUsers){ for(i=0; i < numberOfUsers; i++) { const age = randomNumber(100); const randomDay = randomNumber(28); const randomMonth = randomNumber(12); const year = 2025 - age; const birthdate = new Date(year,randomMonth,randomDay) users.push({ name: `Name${i}`, lastname: `Lastname${i}`, roles: roles[Math.floor(Math.random() * 3)], birthdate: birthdate, age: age }) } return users; } db.users.insertMany(generateRandomUsers(3)) ```
En la consola de **MongoDB (**`mongosh`**)**, puedes insertar documentos en una colección usando los métodos `insertOne` e `insertMany`. ## **📌 Insertar un solo documento con** `insertOne` El método `insertOne` permite agregar un **único documento** a una colección. ### **Ejemplo:** db.usuarios.insertOne({ "nombre": "Juan", "apellido": "Pérez", "rol": \["admin", "developer"], "fechaNac": ISODate("1990-02-14T00:00:00.000Z"), "edad": 34 }) ✅ **Salida esperada**: { "acknowledged": true, "insertedId": ObjectId("64a9b1234c5d6e7f8a9b0123") } 🔹 **MongoDB genera automáticamente un** `_id` si no se especifica. ## **📌 Insertar múltiples documentos con** `insertMany` El método `insertMany` permite agregar **varios documentos** al mismo tiempo en una colección. ### **Ejemplo:** db.usuarios.insertMany(\[ { "nombre": "Laura", "apellido": "Gómez", "rol": \["editor", "marketing"], "fechaNac": ISODate("1995-05-20T00:00:00.000Z"), "edad": 28 }, { "nombre": "Pedro", "apellido": "López", "rol": \["designer", "content creator"], "fechaNac": ISODate("1988-09-12T00:00:00.000Z"), "edad": 35 } ]) ✅ **Salida esperada**: { "acknowledged": true, "insertedIds": { "0": ObjectId("64a9b1234c5d6e7f8a9b0124"), "1": ObjectId("64a9b1234c5d6e7f8a9b0125") } } ## **🔹 Consideraciones Importantes** * `insertOne` solo permite insertar **un documento a la vez**. * `insertMany` permite insertar **varios documentos a la vez**. * MongoDB genera un `_id` **automáticamente** si no lo especificas. * `ISODate()` solo se usa dentro de `mongosh`; si insertas desde otro cliente, usa **strings de fecha en formato ISO 8601**. ## **🛠️ Verificar la Inserción** Después de insertar los datos, puedes ver los documentos almacenados con: db.usuarios.find().pretty()
En donde puedo encontrar el codigo de esta clase? 👩‍💻