MongoDB Bulk Write


MongoDB Bulk Write

In MongoDB, the bulkWrite operation is used to perform multiple write operations in a single command. This method allows you to execute a series of write operations efficiently within MongoDB collections.


Syntax

db.collection.bulkWrite(operations, options)

The bulkWrite method takes an array of write operations and an optional options parameter to customize the bulk operation.


Example MongoDB Bulk Write

Let's look at some examples of how to use the bulkWrite method in the programGuru collection in MongoDB:

1. Bulk Insert, Update, and Delete

db.programGuru.bulkWrite([
    { insertOne: { document: { name: "John Doe", age: 30, email: "john.doe@example.com" } } },
    { updateOne: { filter: { name: "Jane Smith" }, update: { $set: { age: 26 } } } },
    { deleteOne: { filter: { name: "Jim Brown" } } }
])

This command performs a bulk operation that inserts a new document, updates an existing document, and deletes a document within the programGuru collection.


Full Example

Let's go through a complete example that includes switching to a database, creating a collection, inserting documents, performing a bulk write operation, and verifying the results.

Step 1: Switch to a Database

This step involves switching to a database named myDatabase.

use myDatabase

In this example, we switch to the myDatabase database.

MongoDB Bulk Write

Step 2: Create a Collection

This step involves creating a new collection named programGuru in the myDatabase database.

db.createCollection("programGuru")

Here, we create a collection named programGuru.

MongoDB Bulk Write

Step 3: Insert Documents into the Collection

This step involves inserting documents into the programGuru collection.

db.programGuru.insertMany([
    { name: "John Doe", age: 30, email: "john.doe@example.com" },
    { name: "Jane Smith", age: 25, email: "jane.smith@example.com" },
    { name: "Jim Brown", age: 35, email: "jim.brown@example.com" }
])

We insert multiple documents into the programGuru collection.

MongoDB Bulk Write

Step 4: Perform a Bulk Write Operation

This step involves using the bulkWrite method to perform multiple write operations in the programGuru collection.

db.programGuru.bulkWrite([
    { insertOne: { document: { name: "Alice Wonderland", age: 28, email: "alice.wonderland@example.com" } } },
    { updateOne: { filter: { name: "Jane Smith" }, update: { $set: { age: 26 } } } },
    { deleteOne: { filter: { name: "Jim Brown" } } }
])

We perform a bulk operation that inserts a new document, updates an existing document, and deletes a document within the programGuru collection.

MongoDB Bulk Write

Step 5: Verify the Results

This step involves querying the programGuru collection to verify that the bulk write operations have been performed.

db.programGuru.find().pretty()

This command retrieves all documents from the programGuru collection and displays them in a readable format.

MongoDB Bulk Write

Conclusion

The MongoDB bulkWrite operation is crucial for executing multiple write operations efficiently. Understanding how to use this method allows you to perform large-scale write operations in a single command, improving the performance and scalability of your MongoDB applications.