バッチ処理

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

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

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

運用

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

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

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

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