Bu bölüm, mongo kabuğunu kullanarak MongoDB belge verilerinde toplu işlemleri (bulkWrite) tanıtır. Burada toplu işlemler, önceki bölümlerde bahsedilen belgelerin toplu güncellemesine atıfta bulunmanın yanı sıra belge ekleme, güncelleme ve silme işlemlerini içeren toplu yazma işlemlerini de kapsar.

bulkWrite işlevi, mongo kabuğunda toplu işlemler için kullanılır.

İpucu: Toplu işlemler genellikle toplu veri senkronizasyonu gerektiren senaryolarda kullanılır.

bulkWrite işlevi tarafından desteklenen yazma işlemleri

Toplu işlemler, aşağıdaki yazma işlemi kombinasyonlarını destekler:

  • insertOne - Bir belge ekle
  • updateOne - Bir belgeyi güncelle
  • updateMany - Bir belge yığını güncelle
  • replaceOne - Bir belgeyi değiştir
  • deleteOne - Bir belgeyi sil
  • deleteMany - Bir belge yığını sil

Sözdizimi formatı

db.koleksiyon.bulkWrite(
   [ <işlem 1>, <işlem 2>, ... ],
)

Açıklama:

  • işlem - Yazma işlemi yapılandırmasını temsil eder
  • bulkWrite, yazma işlemlerinin bir dizisini kabul eder.

Örnek

Aşağıda, bir dizi belge yazma işleminin toplu yürütülmesini gösteren kapsamlı bir örnek bulunmaktadır.

db.stok.bulkWrite(
      [
	     // Bir belge ekle
         { insertOne :
            {
			// Belge içeriği
               "belge" :
               {
                  "_id" : 4, "karakter" : "Dithras", "sınıf" : "barbar", "seviye" : 4
               }
            }
         },
         { insertOne :
            {
               "belge" :
               {
                  "_id" : 5, "karakter" : "Taeln", "sınıf" : "dövüşçü", "seviye" : 3
               }
            }
         },
		 // Bir belgeyi güncelle, updateMany bir belge yığını güncellemek için benzerdir
         { updateOne :
            {
			   // Güncelleme koşulu
               "filtre" : { "karakter" : "Eldon" },
			   // Güncelleme içeriği
               "güncelleme" : { $set : { "durum" : "Kritik Yaralanma" } }
            }
         },
		 // Bir belgeyi sil, deleteMany birden fazla belgeyi silmek için benzerdir
         { deleteOne :
		    // Silme koşulu
            { "filtre" : { "karakter" : "Brisbane" } }
         },
		 // Bir belgeyi değiştir
         { replaceOne :
            {
			    // Değiştirme koşulu
               "filtre" : { "karakter" : "Meldane" },
			   // Değiştirme içeriği
               "değiştirme" : { "karakter" : "Tanys", "sınıf" : "oracle", "seviye" : 4 }
            }
         }
      ]
   );