Procesamiento por lotes

Si bien la mayoría de los servicios proporcionan APIs síncronas que requieren que realices una solicitud y, luego, esperes una respuesta, BatchJobService proporciona una forma de realizar lotes de operaciones en varios servicios sin esperar de forma síncrona a que se completen las operaciones.

A diferencia de las operaciones de mutación específicas del servicio, un solo trabajo en BatchJobService puede operar en una colección mixta de campañas, grupos de anuncios, anuncios, criterios, etiquetas y recursos. Los trabajos enviados se ejecutan en paralelo, y BatchJobService reintenta automáticamente las operaciones que fallan debido a errores transitorios, como los errores de límite de frecuencia. La API de Google Ads sigue contando cada operación para tu límite de operaciones diarias, según las instrucciones de recuento de operaciones de la API.

BatchJobService también te permite usar IDs temporales en tus solicitudes para que puedas enviar operaciones dependientes en un solo trabajo.

Operaciones

BatchJobService admite todas las operaciones que se indican en MutateOperation cuyo servicio subyacente admite fallas parciales, así como AssetGroupOperation y AssetGroupListingGroupFilterOperation, que se excluyen y ejecutan de forma explícita (junto con las operaciones interdependientes relacionadas) en sublotes atómicos.

Debido a que la API de Google Ads ejecuta operaciones estándar en un trabajo con el error parcial habilitado (excepto dentro de los sublotes atómicos), si se cancela un trabajo o fallan operaciones individuales, las operaciones que se realizaron correctamente no se revierten.

Las siguientes operaciones en MutateOperation deben ser atómicas y no admiten fallas parciales, por lo que no se admiten en los trabajos por lotes. Si agregas cualquiera de estas operaciones a un trabajo por lotes, se muestra un error MutateError.OPERATION_DOES_NOT_SUPPORT_PARTIAL_FAILURE (o un error InternalError.INTERNAL_ERROR para BookCampaignsOperation y QuoteCampaignsOperation). En su lugar, ejecútalas con GoogleAdsService.Mutate con partial_failure establecido en false (y validate_only establecido en true para QuoteCampaignsOperation).

Operaciones no admitidas en BatchJobService