बैच प्रोसेसिंग

ज़्यादातर सेवाओं में सिंक एपीआई उपलब्ध होते हैं. इनके लिए, आपको अनुरोध करना होता है और फिर जवाब का इंतज़ार करना पड़ता है. हालांकि, BatchJobService की मदद से, एक साथ कई सेवाओं पर कई कार्रवाइयां की जा सकती हैं. इसके लिए, आपको कार्रवाइयां पूरी होने तक इंतज़ार नहीं करना पड़ता.

सेवा के हिसाब से होने वाली म्यूटेट कार्रवाइयों के उलट, BatchJobService में एक ही जॉब, कैंपेन, विज्ञापन ग्रुप, विज्ञापन, शर्तें, लेबल, और ऐसेट के मिक्स कलेक्शन पर काम कर सकती है. सबमिट की गई जॉब एक साथ चलती हैं. साथ ही, BatchJobService उन कार्रवाइयों को अपने-आप फिर से करने की कोशिश करता है जो अस्थायी गड़बड़ियों की वजह से पूरी नहीं हो पाती हैं. जैसे, अनुरोध संख्या सीमित करने से जुड़ी गड़बड़ियां. Google Ads API, एपीआई की कार्रवाइयों को गिनने के निर्देशों के मुताबिक, हर कार्रवाई को आपकी रोज़ाना की कार्रवाई की सीमा में गिनता है.

BatchJobService की मदद से, अनुरोधों में अस्थायी आईडी भी इस्तेमाल किए जा सकते हैं. इससे, एक ही जॉब में एक-दूसरे पर निर्भर कार्रवाइयां सबमिट की जा सकती हैं.

कार्रवाइयां

BatchJobService, MutateOperation में दी गई उन सभी कार्रवाइयों के साथ काम करता है जिनकी बुनियादी सेवा, आंशिक तौर पर गड़बड़ी होने पर भी काम कर सकती है. इसके अलावा, यह AssetGroupOperation और AssetGroupListingGroupFilterOperation के साथ भी काम करता है. इन कार्रवाइयों को साफ़ तौर पर छूट दी गई है. साथ ही, इन्हें (एक-दूसरे पर निर्भर कार्रवाइयों के साथ) एटॉमिक सब-बैच में भी चलाया जा सकता है.

Google Ads API, आंशिक तौर पर गड़बड़ी होने पर भी काम करने वाली सेटिंग के साथ, किसी जॉब में स्टैंडर्ड कार्रवाइयां करता है. हालांकि, एटॉमिक सब-बैच में ऐसा नहीं होता. इसलिए, अगर कोई जॉब रद्द कर दी जाती है या अलग-अलग कार्रवाइयां पूरी नहीं हो पाती हैं, तो पूरी हो चुकी कार्रवाइयों को वापस नहीं किया जाता.

MutateOperation में दी गई इन कार्रवाइयों को एटॉमिक होना चाहिए. साथ ही, ये आंशिक तौर पर गड़बड़ी होने पर भी काम नहीं करती हैं. इसलिए, इन्हें बैच जॉब में इस्तेमाल नहीं किया जा सकता. बैच जॉब में इनमें से कोई भी कार्रवाई जोड़ने पर एक MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE गड़बड़ी दिखती है. वहीं, BookCampaignsOperation और QuoteCampaignsOperation के लिए,InternalError.INTERNAL_ERROR गड़बड़ी दिखती है. इसके बजाय, इन्हें GoogleAdsService.Mutate का इस्तेमाल करके चलाएं. इसके लिए,partial_failure को false पर सेट करें. साथ ही, QuoteCampaignsOperation के लिए,validate_only को true पर सेट करें.

BatchJobService में काम न करने वाली कार्रवाइयां