Bulk Insert方法
-
使用方法有分有兩Unordered Operations和Ordered Operations
有何差異?
-
Ordered Operations
,mongodb在執行列表的寫入操作時,如果其中一個發生錯誤,它就會停止下來,不會在繼續執行列表內的其它寫入操作,並且前面的操作不會rollback
。使用範例如下。
var bulk = db.collection.initializeOrderedBulkOp(); bulk.insert( { name: "mark"} ); bulk.insert( { name: "hoho"} ); bulk.execute();
Unordered Operations
,mongodb在執行列表的寫入操作時,如果其中一個發生錯誤,它不會停止下來,會繼續執行列表內的其它寫入操作,速度較快。使用範例如下。
var bulk = db.collection.initializeUnorderedBulkOp(); bulk.insert( { name: "mark"} ); bulk.insert( { name: "hoho"} ); bulk.execute();
-
在數據量較大情況下使用Bulk操作都名顯優於insert、insertMany。
要回傳值和錯誤詳細回傳資料的話,請選擇InsertMany,
如果不在乎掉資料,請使用Unordered Bulk
如果決不能掉資料, 使用Ordered Bulk