پردازش دسته ای

در حالی که اکثر سرویس‌ها APIهای همزمانی ارائه می‌دهند که شما را ملزم به ارسال درخواست و سپس انتظار برای پاسخ می‌کنند، BatchJobService راهی برای انجام دسته‌ای از عملیات روی چندین سرویس بدون انتظار همزمان برای تکمیل عملیات فراهم می‌کند.

برخلاف عملیات تغییر شکل مختص سرویس، یک کار واحد در BatchJobService می‌تواند روی مجموعه‌ای ترکیبی از کمپین‌ها، گروه‌های تبلیغاتی، تبلیغات، معیارها، برچسب‌ها و دارایی‌ها عمل کند. کارهای ارسال شده به صورت موازی اجرا می‌شوند و BatchJobService به طور خودکار عملیاتی را که به دلیل خطاهای گذرا مانند خطاهای محدودیت نرخ شکست می‌خورند، دوباره امتحان می‌کند. API تبلیغات گوگل همچنان هر عملیات را به عنوان محدودیت عملیات روزانه شما در نظر می‌گیرد و دستورالعمل‌های شمارش عملیات API را دنبال می‌کند.

BatchJobService همچنین به شما امکان می‌دهد از شناسه‌های موقت در درخواست‌های خود استفاده کنید تا بتوانید عملیات وابسته را در یک کار واحد ارسال کنید.

عملیات

BatchJobService از تمام عملیات ذکر شده در MutateOperation که سرویس زیربنایی آنها از شکست جزئی پشتیبانی می‌کند، و همچنین AssetGroupOperation و AssetGroupListingGroupFilterOperation که صراحتاً معاف شده و (همراه با عملیات وابسته به هم مرتبط) در زیر-دسته‌های اتمی اجرا می‌شوند، پشتیبانی می‌کند.

از آنجا که API گوگل ادز عملیات استاندارد را در یک کار با فعال بودن خطای جزئی (به جز در زیرگروه‌های اتمی ) اجرا می‌کند، اگر یک کار لغو شود یا عملیات‌های فردی با شکست مواجه شوند، عملیاتی که موفق شده‌اند به حالت اولیه خود باز نمی‌گردند .

عملیات زیر در MutateOperation باید اتمی باشند و از خطای جزئی پشتیبانی نمی‌کنند، بنابراین در کارهای دسته‌ای پشتیبانی نمی‌شوند. اضافه کردن هر یک از این عملیات به یک کار دسته‌ای، خطای MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE (یا خطای InternalError.INTERNAL_ERROR برای BookCampaignsOperation و QuoteCampaignsOperation ) را برمی‌گرداند. در عوض، آنها را با استفاده از GoogleAdsService.Mutate با مقدار false برای partial_failure (و مقدار true برای QuoteCampaignsOperation برای validate_only ) اجرا کنید.

عملیات پشتیبانی نشده در BatchJobService