대부분의 서비스는 요청을 한 후 응답을 기다려야 하는 동기식 API를 제공하지만 BatchJobService는 작업이 완료될 때까지 동기식으로 기다리지 않고 여러 서비스에서 일괄 작업을 실행하는 방법을 제공합니다.
서비스별 변경 작업과 달리
BatchJobService의 단일 작업은
캠페인, 광고그룹, 광고, 타겟, 라벨, 애셋의 혼합 컬렉션을 대상으로 작동할 수 있습니다. 제출된 작업은
병렬로 실행되며 BatchJobService 비율 제한 오류와 같은 일시적인 오류로 인해 실패한 작업을 자동으로 재시도합니다. Google Ads API는
일일 작업 한도에 따라 각 작업을 계속 집계하며, API 작업 집계 안내를 따릅니다.
BatchJobService를 사용하면 요청 내에서
임시 ID를 사용하여 단일 작업에서 종속
작업을 제출할 수도 있습니다.
작업
BatchJobService는 기본 서비스가
부분 실패를 지원하는
MutateOperation에 나열된 모든 작업과 명시적으로 제외되고 원자적 하위 일괄 처리에서 관련 상호 종속 작업과 함께 실행되는
AssetGroupOperation 및
AssetGroupListingGroupFilterOperation을 지원합니다.
Google Ads API는 부분 실패가 사용 설정된 작업에서 표준 작업을 실행하므로 (원자적 하위 일괄 처리 내 제외) 작업이 취소되거나 개별 작업이 실패하면 성공한 작업은 롤백되지 _않습니다_.
MutateOperation의 다음 작업은
원자적이어야 하며 부분 실패를 지원하지 않으므로 일괄 작업 내에서
지원되지 않습니다. 이러한 작업을 일괄 작업에 추가하면
MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE
오류(InternalError.INTERNAL_ERROR의 경우
BookCampaignsOperation 및
QuoteCampaignsOperation)가 반환됩니다. 대신 partial_failure를
false로 설정하고
QuoteCampaignsOperation의 경우 validate_only를 true로 설정하여
GoogleAdsService.Mutate를 사용하여 실행합니다.
BatchJobService에서 지원되지 않는 작업
BookCampaignsOperation(MutateOperation에서 사용 가능)CampaignConversionGoalOperationConversionGoalCampaignConfigOperationCustomConversionGoalOperationCustomerConversionGoalOperationCustomerOperationQuoteCampaignsOperation(MutateOperation에서 사용 가능,validate_only를true로 설정해야 함)