ज़्यादातर सेवाएं सिंक्रोनस एपीआई उपलब्ध कराती हैं. इसके लिए, आपको अनुरोध करना पड़ता है और फिर जवाब का इंतज़ार करना पड़ता है. वहीं, BatchJobService
एक साथ कई सेवाओं पर कार्रवाइयों के बैच करने का तरीका उपलब्ध कराता है. इसके लिए, आपको एक साथ कई कार्रवाइयों के पूरे होने का इंतज़ार नहीं करना पड़ता.
सेवा के हिसाब से बदलाव करने वाले ऑपरेशन के उलट, BatchJobService
में मौजूद एक ही जॉब, कैंपेन, विज्ञापन ग्रुप, विज्ञापनों, शर्तों, लेबल, और फ़ीड आइटम के अलग-अलग कलेक्शन के साथ काम कर सकता है.
सबमिट किए गए जॉब एक साथ चलते हैं. साथ ही, BatchJobService
उन ऑपरेशन को अपने-आप फिर से शुरू करता है जो दर की सीमा जैसी कुछ समय के लिए होने वाली गड़बड़ियों की वजह से पूरा नहीं हो पाते. Google Ads API अब भी एपीआई ऑपरेशन की गिनती करने के निर्देशों का पालन करते हुए, हर ऑपरेशन को आपकी रोज़ की ऑपरेशन सीमा में गिना जाता है.
इसके अलावा, BatchJobService
की मदद से, अनुरोधों में अस्थायी आईडी का इस्तेमाल किया जा सकता है, ताकि एक ही जॉब में, एक-दूसरे पर निर्भर ऑपरेशन सबमिट किए जा सकें.
ऑपरेशंस
BatchJobService
, MutateOperation
में बताए गए सभी ऑपरेशन के साथ काम करता है. हालांकि, इसमें कुछ अहम अपवाद भी हैं.
Google Ads API, कुछ कामों में गड़बड़ी की सुविधा चालू होने पर, किसी जॉब में सभी ऑपरेशन करता है. अगर कोई जॉब रद्द किया जाता है या कुछ ऑपरेशन पूरे नहीं होते, तो पूरे हो चुके ऑपरेशन रोल बैक नहीं किए जाएंगे.
MutateOperation
में ये कार्रवाइयां एटॉमिक होनी चाहिए. इसलिए, ये कार्रवाइयां पूरी तरह से पूरी नहीं हो पाती हैं और ये बैच जॉब में काम नहीं करती हैं. उन्हें अपनी नौकरियों में जोड़ने से बचें. अपने अनुरोधों में partial_failure
को false
पर सेट करें. इसके बजाय, GoogleAdsService
में mutate
का इस्तेमाल करें.
BatchJobService में काम न करने वाले ऑपरेशन
CampaignConversionGoalOperation
ConversionGoalCampaignConfigOperation
CustomConversionGoalOperation
CustomerConversionGoalOperation
CustomerOperation