バッチ処理

ほとんどのサービスが提供する API は同期的であるため、リクエストを送信してからレスポンスを待つ必要がありますが、BatchJobService を使用すると、オペレーションの完了を同期的に待機することなく、複数のサービスでオペレーションのバッチを実行できます。

サービス固有の変更オペレーションとは異なり、BatchJobService の 1 つのジョブは、キャンペーン、広告グループ、広告、条件、ラベル、フィード アイテムの混合コレクションに対してオペレーションを実行できます。送信されたジョブは並行して実行され、BatchJobService は、レート制限エラーなどの一時的なエラーで失敗したオペレーションを自動的に再試行します。Google Ads API では、API オペレーションのカウント方法に従い、各オペレーションが 1 日のオペレーション数上限に対してカウントされます。

また、BatchJobService ではリクエスト内で一時 ID を使用できるため、依存するオペレーションを 1 つのジョブで送信できます。

運用

BatchJobServiceMutateOperation にリストされているすべてのオペレーションをサポートしますが、いくつかの重要な例外があります。

Google Ads API は、部分的な失敗を有効にしてジョブ内のすべてのオペレーションを実行するため、ジョブがキャンセルされたり、個々のオペレーションが失敗したりしても、成功したオペレーションはロールバックされません

MutateOperation の次のオペレーションはアトミックでなければならないため、部分的な失敗やバッチジョブ内ではサポートされていません。これらをジョブに追加せず、リクエストで partial_failurefalse に設定し、代わりに GoogleAdsServicemutate メソッドを使用します。

BatchJobService でサポートされていないオペレーション