在執行批量更新時,mongodb是否鎖定了數據庫? 我正在使用mongo批量操作。併發寫入mongodb批量更新
var bulk = db.items.initializeUnorderedBulkOp(); bulk.find({ status: "D" }).updateOne({ $set: { status: "I", points: "0" } }); bulk.find({ status: "A" }).updateOne({ $set: { status: "B", points: "0" } }); bulk.execute();
假設這個操作有100查找和更新,並有其他進程運行的也試圖在數據庫更新同一集合。
它有鎖定以防止併發更新嗎?
是的。我明白,使用'db.collection.update()'更新集合時,mongo使用鎖定。我特別要求,如果我正在使用bulk.initializeUnorderedBulkOp更新集合。它會使用鎖嗎? 是的。我正在使用mongo 3.2 –
批量更新與鎖定/併發性沒有區別。 – helmy