一括書き込み操作
一括操作には、順序付き一括操作と順序なし一括操作の 2 種類があります。
順序付き一括操作では、すべての操作が順番に実行され、最初の書込みエラーでエラーが発生します。
順序付けなしの一括操作ではすべての操作が実行され、エラーが報告されます。 順序なしの一括操作では、実行順序は保証されません。
注意
このガイドでは、 クイック スタート プライマリで説明されている Observable
の暗黙的な方法を使用します。
次のコードは、順序付き操作と順序なし操作を使用する例を示します。
import org.mongodb.scala._ import org.mongodb.scala.model._ // Ordered bulk operation - order is guaranteed collection.bulkWrite( List(InsertOneModel(Document("_id" -> 4)), InsertOneModel(Document("_id" -> 5)), InsertOneModel(Document("_id" -> 6)), UpdateOneModel(Document("_id" -> 1), Document("$set", Document("x" -> 2))), DeleteOneModel(Document("_id" -> 2)), ReplaceOneModel(Document("_id"-> 3), Document("_id" -> 3, "x" -> 4))) ).printResults() // Unordered bulk operation - no guarantee of order of operation collection.bulkWrite( List(InsertOneModel(Document("_id" -> 4)), InsertOneModel(Document("_id" -> 5)), InsertOneModel(Document("_id" -> 6)), UpdateOneModel(Document("_id" -> 1), Document("$set", Document("x" -> 2))), DeleteOneModel(Document("_id" -> 2)), ReplaceOneModel(Document("_id"-> 3), Document("_id" -> 3, "x" -> 4))), BulkWriteOptions().ordered(false) ).printResults()