0
0
Firebasecloud~30 mins

Batch writes in Firebase - Mini Project: Build & Apply

Choose your learning style9 modes available
Batch writes
📖 Scenario: You are building a simple app that needs to add multiple user profiles to a Firestore database at once. To keep the data consistent and save time, you will use batch writes.
🎯 Goal: Create a Firestore batch write that adds three user documents with exact data in a single commit.
📋 What You'll Learn
Create a Firestore batch instance
Add three user documents with specified IDs and fields to the batch
Commit the batch to write all documents at once
💡 Why This Matters
🌍 Real World
Batch writes are used to perform multiple database changes at once, ensuring all succeed or fail together. This is useful for syncing related data or improving performance.
💼 Career
Understanding batch writes is important for backend and full-stack developers working with Firestore to maintain data consistency and optimize database operations.
Progress0 / 4 steps
1
Initialize Firestore and batch
Create a variable called db that initializes Firestore using getFirestore(). Then create a variable called batch that initializes a batch write using writeBatch(db).
Firebase
Need a hint?

Use getFirestore() to get the Firestore instance and writeBatch(db) to start a batch.

2
Prepare user document references
Create three variables called userRef1, userRef2, and userRef3. Each should use doc(db, 'users', 'user1'), doc(db, 'users', 'user2'), and doc(db, 'users', 'user3') respectively to reference documents in the 'users' collection.
Firebase
Need a hint?

Use doc(db, 'users', 'userX') to get document references for each user.

3
Add user data to batch
Use batch.set() to add three user documents to the batch. For userRef1, set {name: 'Alice', age: 30}. For userRef2, set {name: 'Bob', age: 25}. For userRef3, set {name: 'Charlie', age: 35}.
Firebase
Need a hint?

Use batch.set(documentRef, data) to add each user document to the batch.

4
Commit the batch write
Add a line to commit the batch write using await batch.commit(). Make sure the function is async or use a top-level await if supported.
Firebase
Need a hint?

Use await batch.commit() to send all writes to Firestore at once.