Wenn Sie mit Filtern für Eintragsgruppen im Kontext eines AdGroupCriterion.listing_group oder eines AssetGroupListingGroupFilter arbeiten, sollten Sie bei der Entwicklung Ihrer Integration die folgenden Aspekte berücksichtigen.
Batchaufteilung
Wenn ein Batchjob Vorgänge mit Anzeigengruppenkriterien oder Filtern für die Eintragsgruppe der Asset-Gruppe enthält, werden die Vorgänge im Batchjob beim Empfang durch den Google Ads API-Server in mehrere Unter-Batches aufgeteilt. Im Gegensatz zu Standardvorgängen in einem Batch-Job wird jeder Sub-Batch, der Filtervorgänge für die Eintragsgruppe enthält, atomar behandelt.
Die Art und Weise, wie Batchjobs mit Filtern für Eintragsgruppen in Sub-Batches aufgeteilt werden, hängt von den folgenden Faktoren ab:
- Typ des Filters für Eintragsgruppen
- Der Filter für die
AdGroup- oderAssetGroup-Eintragsgruppe ist auf Folgendes ausgerichtet: - Reihenfolge von Vorgängen
So werden Vorgänge gruppiert:
- Alle aufeinanderfolgenden
AssetGroupListingGroupFilterOperation-Vorgänge (create,updateundremove), die auf dasselbeAssetGroupabzielen, werden in einem atomaren Sub-Batch gruppiert (kein teilweises Fehlerverhalten). - Alle aufeinanderfolgenden
AdGroupCriterionOperation-Vorgänge (create,updateundremove) fürLISTING_GROUP-Kriterien (AdGroupCriterion.listing_group), die auf dasselbeAdGroupausgerichtet sind, werden in einem atomaren Unter-Batch gruppiert (kein teilweises Fehlerverhalten). - Alle anderen aufeinanderfolgenden Vorgänge werden in nicht atomaren Sub-Batches gruppiert (Verhalten bei teilweisem Fehler).
Das folgende Diagramm veranschaulicht dieses Konzept. Jedes der grauen Kästchen steht für einen Batch-Job, der über die Google Ads API eingereicht wurde. In den grauen Kästen sind die einzelnen Vorgänge farblich nach den Unterbatches gruppiert, die vom Google Ads API-Server erstellt werden. Die Reihenfolge der Vorgänge in den einzelnen grauen Feldern entspricht der Reihenfolge, in der die Vorgänge dem Batchjob hinzugefügt worden wären.
Beschränkungen
Wenn Sie im Zusammenhang mit Batchjobs mit Filtern für Eintragsgruppen arbeiten, gelten die folgenden Einschränkungen:
- Ein einzelner atomarer Sub-Batch mit aufeinanderfolgenden
AdGroupCriterionOperation-Vorgängen (create,updateundremove) fürLISTING_GROUP-Kriterien (AdGroupCriterion.listing_group), die auf dasselbeAdGroupausgerichtet sind,darf nicht länger als 20.000 Vorgänge sein. Es wird jedoch empfohlen, 10.000 Vorgänge nicht zu überschreiten. Da jedeAddBatchJobOperationsRequestauf 10.000 Vorgänge begrenzt ist, muss einAdGroup-Unter-Batch mit 10.001 bis 20.000 Vorgängen in mindestens zwei aufeinanderfolgendenAddBatchJobOperations-Anfragen hochgeladen werden. - Ein einzelner atomarer Sub-Batch mit aufeinanderfolgenden
AssetGroupListingGroupFilterOperation-Vorgängen (create,updateundremove), die auf dasselbeAssetGroupausgerichtet sind,darf 10.000 Vorgänge nicht überschreiten. - Wenn eines dieser Limits für die Anzahl der Vorgänge überschritten wird oder die interne serialisierte Byte-Größenbeschränkung des Servers für einen einzelnen Unterbatch überschritten wird, wird der Batchjob für diesen Unterbatch abgebrochen. Alle vorherigen Unterbatches, die bereits abgeschlossen wurden, bleiben bestehen, während alle Vorgänge im fehlerhaften Unterbatch und in allen nachfolgenden Unterbatches mit
InternalError.INTERNAL_ERRORfehlschlagen.
Fehlerbehebung
Filtervorgänge für Eintragsgruppen in einem Batchjob werden als eine Transaktion verarbeitet. Das kann dazu führen, dass viele Vorgänge aufgrund einer geringen Anzahl fehlerhafter Vorgänge fehlschlagen. Außerdem kann die Ursache der Fehler aufgrund der Art und Weise, wie BatchJob-Vorgänge verarbeitet werden, an einem Index vor oder nach den Downstream-Fehlern angezeigt werden.
Beispiel: Verarbeitung einer Antwort von ListBatchJobResults:
- Bei
AdGroupCriterionOperation-Auflistungsgruppen kann es vorkommen, dass aufeinanderfolgende Vorgänge, die auf dasselbeAdGroupausgerichtet sind, mitCriterionError.LISTING_GROUP_ERROR_IN_ANOTHER_OPERATION(Product group operations are atomic within the same ad group. This operation failed because another operation targeting the same ad group ID was invalid.) fehlgeschlagen sind. - Bei
AssetGroupListingGroupFilterOperation-Vorgängen kann es vorkommen, dass aufeinanderfolgende Vorgänge, die auf dasselbeAssetGroupabzielen, mitBatchJobError.ASSET_GROUP_LISTING_GROUP_FILTER_TRANSACTION_FAILUREfehlschlagen.
Diese Fehler weisen darauf hin, dass der Vorgang an diesem Index zurückgesetzt wurde, weil ein anderer Vorgang im selben atomaren Sub-Batch fehlgeschlagen ist. Um die Ursache des Problems zu ermitteln, durchlaufen Sie die status-Nachrichten in jedem BatchJobResult – vor und nach dem operation_index des Transaktionsfehlers – für Vorgänge mit derselben AdGroup- oder AssetGroup-ID.