バッチ処理

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

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

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

運用

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

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

MutateOperation の次のオペレーションはアトミックである必要があります。したがって、部分的な障害はサポートされず、バッチジョブ内ではサポートされません。これらのオペレーションをジョブに追加することは避け、リクエストで partial_failurefalse に設定し、代わりに GoogleAdsServicemutate メソッドを使用します。

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