Używanie filtrów grup informacji o produktach w zadaniach zbiorczych

Gdy pracujesz z filtrami grup informacji o produktach w kontekście AdGroupCriterion.listing_group lub AssetGroupListingGroupFilter, podczas projektowania integracji weź pod uwagę te kwestie.

Dzielenie wsadowe

Jeśli w zadaniu wsadowym występują operacje, które zawierają kryteria grupy reklam lub filtry grup informacji o produktach w grupie komponentów, po odebraniu przez serwer interfejsu Google Ads API operacje te są dzielone na kilka podzadań wsadowych. W przeciwieństwie do standardowych operacji w zadaniu wsadowym każda podgrupa zawierająca operacje filtrowania grup informacji o produktach jest traktowana jako niepodzielna.

Sposób, w jaki zadania wsadowe zawierające filtry grup informacji o produktach są dzielone na podzbiory, zależy od tych czynników:

  1. Typ filtra grupy informacji o produktach
  2. AdGroup lub AssetGroup, na które kieruje filtr grup informacji o produktach
  3. Kolejność działań

Zastanów się, jak są grupowane operacje:

Tę koncepcję ilustruje poniższy diagram. Każde z szarych pól reprezentuje zadanie wsadowe przesłane za pomocą interfejsu Google Ads API. W szarych polach poszczególne operacje są pogrupowane według kolorów, które reprezentują podzbiory utworzone przez serwer interfejsu Google Ads API. Kolejność operacji w każdym z szarych pól odpowiada kolejności, w jakiej operacje zostałyby dodane do zadania wsadowego.

Diagram przedstawiający operacje wsadowe pogrupowane w podzbiory

Ograniczenia

Podczas pracy z filtrami grup informacji o produktach w kontekście zadań wsadowych obowiązują te ograniczenia:

  • Pojedyncza niepodzielna podgrupa kolejnych operacji AdGroupCriterionOperation (create, update i remove) dotyczących kryteriów LISTING_GROUP (AdGroupCriterion.listing_group) kierowanych na ten sam element AdGroup nie może przekraczać 20 000 operacji. Zalecamy jednak, aby nie przekraczać 10 000 operacji. Ponieważ każda operacja AddBatchJobOperationsRequest jest ograniczona do 10 000 operacji, podzbiór AdGroup zawierający od 10 001 do 20 000 operacji musi zostać przesłany w co najmniej 2 kolejnych żądaniach AddBatchJobOperations.
  • Pojedynczy niepodzielny podzbiór kolejnych operacji AssetGroupListingGroupFilterOperation (create, update i remove) kierowanych na ten sam element AssetGroup nie może przekraczać 10 000 operacji.
  • Naruszenie któregokolwiek z tych limitów liczby operacji (lub przekroczenie wewnętrznego limitu rozmiaru zserializowanego bajtu dla pojedynczego podzestawu) powoduje przerwanie zadania wsadowego na tym podzestawie: wszystkie wcześniejsze podzestawy, które zostały już ukończone, pozostają zatwierdzone, a wszystkie operacje w podzestawie, który spowodował błąd, oraz we wszystkich kolejnych podzestawach kończą się niepowodzeniem z błędem InternalError.INTERNAL_ERROR.

Rozwiązywanie problemów

Operacje filtrowania grup informacji o produktach w zadaniu wsadowym są przetwarzane jako jedna transakcja, co może prowadzić do sytuacji, w których wiele operacji kończy się niepowodzeniem z powodu niewielkiej liczby błędnych operacji. Ponadto ze względu na sposób przetwarzania operacji BatchJob główna przyczyna niepowodzeń może pojawić się w indeksie przed niepowodzeniami w dalszej części procesu lub po nich.

Na przykład podczas przetwarzania odpowiedzi z ListBatchJobResults:

Te błędy wskazują, że operacja o tym indeksie została wycofana, ponieważ nie powiodła się inna operacja w tej samej niepodzielnej podgrupie. Aby zidentyfikować główną przyczynę problemu, przejrzyj komunikaty status w każdym BatchJobResult przed i po operation_index błędu transakcji w przypadku operacji o tym samym identyfikatorze AdGroup lub AssetGroup.