Databases & System Design•Part 3: NoSQL & Document Databases (MongoDB, DynamoDB) (26 - 40)
MongoDB Transactions:
In Simple Words: Single-document writes are always atomic. Starting in MongoDB 4.0+, multi-document ACID transactions are fully supported across replica sets and shards.
javascript
const session = client.startSession();
session.startTransaction();
try {
await orders.insertOne({ orderId: 101, amount: 250 }, { session });
await accounts.updateOne({ id: 1 }, { $inc: { balance: -250 } }, { session });
await session.commitTransaction();
} catch (error) {
await session.abortTransaction();
} finally {
session.endSession();
}