Processamento em lote

Embora a maioria dos serviços forneça APIs síncronas que exigem que você faça uma solicitação e aguarde uma resposta, o BatchJobService oferece uma maneira de realizar lotes de operações em vários serviços sem esperar de forma síncrona que as operações sejam concluídas.

Ao contrário das operações de mutação específicas do serviço, um único job em BatchJobService pode operar em uma coleção mista de campanhas, grupos de anúncios, anúncios, critérios, rótulos e recursos. Os jobs enviados são executados em paralelo, e o BatchJobService repete automaticamente as operações que falham devido a erros temporários, como erros de limite de taxa. A API Google Ads ainda conta cada operação no seu limite diário, seguindo as instruções de contagem de operações da API.

O BatchJobService também permite usar IDs temporários nas solicitações para que você possa enviar operações dependentes em um único job.

Operações

BatchJobService é compatível com todas as operações listadas em MutateOperation cujo serviço subjacente é compatível com falha parcial, bem como AssetGroupOperation e AssetGroupListingGroupFilterOperation, que são explicitamente isentas e executadas (junto com operações interdependentes relacionadas) em sublotes atômicos.

Como a API Google Ads executa operações padrão em um job com a falha parcial ativada (exceto em sublotes atômicos), se um job for cancelado ou se operações individuais falharem, as operações que foram bem-sucedidas não serão revertidas.

As seguintes operações em MutateOperation precisam ser atômicas e não aceitam falhas parciais. Por isso, elas não são compatíveis com jobs em lote. Adicionar qualquer uma dessas operações a um job em lote retorna um erro MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE (ou um InternalError.INTERNAL_ERROR para BookCampaignsOperation e QuoteCampaignsOperation). Em vez disso, execute-as usando GoogleAdsService.Mutate com partial_failure definido como false (e validate_only definido como true para QuoteCampaignsOperation).

Operações incompatíveis no BatchJobService