Menggunakan filter kelompok listing dalam tugas batch

Saat Anda menggunakan filter kelompok listingan dalam konteks AdGroupCriterion.listing_group atau AssetGroupListingGroupFilter, pertimbangkan hal berikut saat mendesain integrasi Anda.

Pemisahan batch

Jika ada operasi dalam tugas batch yang berisi kriteria grup iklan atau filter grup listingan grup aset, operasi dalam tugas batch akan dibagi menjadi beberapa sub-batch saat diterima oleh server Google Ads API. Tidak seperti operasi standar dalam tugas batch, setiap sub-batch yang berisi operasi filter kelompok listing diperlakukan secara atomik.

Cara tugas batch yang berisi filter kelompok listing dibagi menjadi sub-batch ditentukan oleh faktor-faktor berikut:

  1. Jenis filter kelompok listing
  2. AdGroup atau AssetGroup yang ditargetkan oleh filter kelompok listingan
  3. Urutan operasi

Pertimbangkan cara pengelompokan operasi:

Diagram berikut menggambarkan konsep tersebut. Setiap kotak abu-abu mewakili tugas batch yang dikirimkan menggunakan Google Ads API. Dalam kotak abu-abu, setiap operasi dikelompokkan berdasarkan warna untuk mewakili sub-batch yang dibuat oleh server Google Ads API. Urutan operasi di setiap kotak abu-abu sesuai dengan urutan operasi yang akan ditambahkan ke tugas batch.

Diagram yang menunjukkan operasi batch yang dikelompokkan ke dalam sub-batch

Batasan

Saat menggunakan filter kelompok listing dalam konteks tugas batch, batasan berikut berlaku:

  • Satu sub-batch atomik dari operasi AdGroupCriterionOperation berturut-turut (create, update, dan remove) untuk kriteria LISTING_GROUP (AdGroupCriterion.listing_group) yang menargetkan AdGroup yang sama tidak boleh melebihi 20.000 operasi. Namun, sebaiknya tidak melebihi 10.000 operasi. Karena setiap AddBatchJobOperationsRequest dibatasi hingga 10.000 operasi, sub-batch AdGroup yang berisi 10.001 hingga 20.000 operasi harus diupload di setidaknya dua permintaan AddBatchJobOperations berturut-turut.
  • Satu sub-batch atomik dari operasi AssetGroupListingGroupFilterOperation berturut-turut (create, update, dan remove) yang menargetkan AssetGroup yang sama tidak boleh melebihi 10.000 operasi.
  • Melanggar salah satu batas jumlah operasi ini (atau melebihi batas ukuran byte serial internal server untuk satu sub-batch) akan membatalkan tugas batch pada sub-batch tersebut: sub-batch sebelumnya yang sudah selesai tetap di-commit, sedangkan semua operasi dalam sub-batch yang melanggar dan sub-batch berikutnya akan gagal dengan InternalError.INTERNAL_ERROR.

Pemecahan masalah

Operasi filter kelompok listingan dalam tugas batch diproses sebagai satu transaksi, yang dapat menyebabkan skenario saat banyak operasi gagal karena sejumlah kecil operasi yang salah. Selain itu, karena cara pemrosesan operasi BatchJob, akar penyebab kegagalan mungkin muncul pada indeks sebelum atau setelah kegagalan hilir.

Misalnya, saat memproses respons dari ListBatchJobResults:

Error ini menunjukkan bahwa operasi pada indeks tersebut di-roll back karena operasi lain dalam sub-batch atomik yang sama gagal. Untuk mengidentifikasi penyebab utama masalah, lakukan iterasi pada pesan status di setiap BatchJobResult—sebelum dan setelah operation_index error transaksi—untuk operasi yang berbagi ID AdGroup atau AssetGroup yang sama.