Ikuti panduan ini untuk memahami batas dan kuota saat menggunakan Data Manager API.
Batasan project
Anda memerlukan project Google Cloud untuk menggunakan Data Manager API. Project Google Cloud menyediakan klien dan kredensial OAuth yang Anda gunakan untuk mengautentikasi permintaan API.
Data Manager API menerapkan pembatasan kapasitas pada setiap project Google Cloud, yang dipisahkan berdasarkan jenis layanan dan operasi (baca versus mutasi):
| Layanan | Operasi | Permintaan per hari | Permintaan per menit |
|---|---|---|---|
IngestionService |
Mengubah (menulis) | 100.000 | 300 |
IngestionService |
Baca | 100.000 | 300 |
| Semua layanan lainnya digabungkan | Mengubah (menulis) | 50.000 | 300 |
| Semua layanan lainnya digabungkan | Baca | 50.000 | 300 |
Permintaan yang melebihi batas akan ditolak dengan error RESOURCE_EXHAUSTED
dan status HTTP 429 Too Many Requests.
Anda dapat mengontrol aplikasi dan mengurangi pembatasan kapasitas dengan secara aktif mengurangi jumlah permintaan dan membatasi QPS dari sisi klien. Anda juga dapat menyiapkan pemberitahuan dan pemantauan kuota di konsol Google Cloud untuk menerima notifikasi sebelum aplikasi Anda mencapai batasnya.
Nama kuota
Setiap batas sesuai dengan nama dan metrik batas kuota di Google Cloud. Jika permintaan melebihi batas, Data Manager API
akan menampilkan nama batas kuota dalam payload detail standar
ErrorInfo di bagian metadata.quota_limit:
| Nama batas kuota | Layanan | Operasi | Jendela | Batas |
|---|---|---|---|---|
IngestionMutateRequestsPerDayPerProject |
IngestionService |
Mutasi | Hari | 100.000 |
IngestionMutateRequestsPerMinutePerProject |
IngestionService |
Mutasi | Menit | 300 |
IngestionReadRequestsPerDayPerProject |
IngestionService |
Baca | Hari | 100.000 |
IngestionReadRequestsPerMinutePerProject |
IngestionService |
Baca | Menit | 300 |
ManagementMutateRequestsPerDayPerProject |
Semua layanan lainnya | Mutasi | Hari | 50.000 |
ManagementMutateRequestsPerMinutePerProject |
Semua layanan lainnya | Mutasi | Menit | 300 |
ManagementReadRequestsPerDayPerProject |
Semua layanan lainnya | Baca | Hari | 50.000 |
ManagementReadRequestsPerMinutePerProject |
Semua layanan lainnya | Baca | Menit | 300 |
Periksa metadata.quota_limit dalam payload ErrorInfo untuk membedakan antara error batas harian dan per menit, serta tentukan apakah akan menjeda sementara dan mencoba lagi dengan backoff, atau menjeda hingga kuota harian direset.
Untuk mengetahui detailnya, lihat Error kuota dan pembatasan kapasitas.
Menangani pembatasan kapasitas dan konkurensi
Untuk memaksimalkan throughput tanpa melebihi kuota project, ikuti panduan berikut:
Kelompokkan data per permintaan: Sertakan data sebanyak mungkin dalam setiap permintaan hingga batas permintaan (hingga 10.000 resource
AudienceMemberatau 2.000 resourceEventper permintaan).Kirim hingga 10 permintaan serentak: Untuk mengurangi total waktu penyerapan tanpa melebihi batas 300 permintaan per menit, kirim hingga 10 permintaan serentak ke
IngestionService.Coba lagi pembatasan kapasitas per menit dengan backoff: Jika permintaan gagal dengan
RESOURCE_EXHAUSTED(HTTP429) danmetadata.quota_limitmenunjukkan pembatasan kapasitas per menit (sepertiIngestionMutateRequestsPerMinutePerProject), coba lagi menggunakan backoff eksponensial dengan jitter (misalnya, menunggu 1 dtk, 2 dtk, dan 4 dtk di antara percobaan ulang).Jeda saat kuota harian habis: Jika
metadata.quota_limitmenunjukkan batas harian (sepertiIngestionMutateRequestsPerDayPerProject), jangan langsung mencoba lagi. Jeda permintaan hingga kuota harian direset pada tengah malam Waktu Pasifik.
Batas permintaan
Berikut adalah batas untuk permintaan tertentu:
IngestAudienceMembersRequestdanRemoveAudienceMembersRequest:10.000 resource
AudienceMemberdalam daftaraudience_members10 ID pengguna di
UserDatauntukAudienceMember10 referensi
Destinationdalam daftardestinations
RemoveAllAudienceMembersRequest:- 10 referensi
Destinationdalam daftardestinations
- 10 referensi
-
2.000 resource
Eventdalam daftarevents10 ID pengguna di
UserDatauntukEvent10 resource
Destinationdalam daftardestinations