शुरू करेंमुफ़्त में शुरू करें

bulk_write() का उपयोग

जैसा आपने वीडियो में देखा, आप .bulk_write() में कुछ ऑपरेशंस का उपयोग कर सकते हैं:

  • InsertOne()
  • UpdateOne() / UpdateMany() / ReplaceOne()
  • DeleteOne() / DeleteMany()
  • ReplaceOne()

आप अपनी मूवी डेटाबेस में कुछ स्प्रिंग क्लीनिंग कर रहे हैं, जहाँ इनमें से कुछ काम आएँगे!

पहला, आपकी टीम चाहती है कि सभी हाई-रेटेड ऑस्कर-विजेता फ़िल्मों को होमपेज पर "featured" के रूप में फ़्लैग किया जाए। दूसरा, अव्यवस्था कम करने के लिए, आपको बहुत पहले रिलीज़ हुई सभी फ़िल्में हटाने के निर्देश दिए गए हैं।

आप दोनों बदलावों को एक ही .bulk_write() ऑपरेशन में ग्रुप करेंगे ताकि वे साथ में चलें.

यह अभ्यास पाठ्यक्रम का हिस्सा है

Python में MongoDB परिचय

पाठ्यक्रम देखें

अभ्यास निर्देश

  • operations में पहला ऑपरेशन पूरा करें ताकि वे सभी मूवीज़ अपडेट हों जिनकी रेटिंग 8.0 से अधिक या बराबर है और जिन्होंने ऑस्कर जीता है; इन मूवीज़ के लिए नया फ़ील्ड "featured" को True सेट करें.
  • operations में दूसरा ऑपरेशन पूरा करें ताकि वे सभी मूवीज़ डिलीट हों जिनका रिलीज़ ईयर 1980 से पहले है.
  • mov पर .bulk_write() ऑपरेशन चलाएँ और परिणाम res के रूप में स्टोर करें.
  • प्रिंट करें कि कितने डॉक्युमेंट्स मॉडिफ़ाई हुए और कितने डॉक्युमेंट्स डिलीट हुए.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

from pymongo import UpdateMany, DeleteMany

operations = [
  	# Set featured to True for all movies with rating > 8 that won oscar
  	____(
    	{ "rating" : { ____: ____}, "won_oscar": ____ },
    	{ "$set": { ____: ____} }
  	),
  	# Remove all movies with release_year before 1980
  	____(
   		{ "release_year": { ____: ____} }
  	)
]                 

# Perform bulk write
res = mov.____

# Print out counts
print(res.____)
print(res.____)
कोड संपादित करें और चलाएँ