이 가이드에 따라 Data Manager API를 사용할 때의 한도와 할당량을 이해하세요.
프로젝트 한도
Data Manager API를 사용하려면 Google Cloud 프로젝트가 필요합니다. Google Cloud 프로젝트는 API 요청을 인증하는 데 사용하는 OAuth 클라이언트와 사용자 인증 정보를 제공합니다.
Data Manager API는 각 Google Cloud 프로젝트에 대해 서비스 및 작업 유형 (읽기 및 변형)별로 구분된 비율 제한을 적용합니다.
| 서비스 | 작업 | 일일 요청 수 | 분당 요청 수 |
|---|---|---|---|
IngestionService |
변형 (쓰기) | 100,000 | 300 |
IngestionService |
읽기 | 100,000 | 300 |
| 기타 모든 서비스 합산 | 변형 (쓰기) | 50,000 | 300 |
| 기타 모든 서비스 합산 | 읽기 | 50,000 | 300 |
한도를 초과하는 요청은 RESOURCE_EXHAUSTED 오류 및 HTTP 상태 429 Too Many Requests와 함께 거부됩니다.
클라이언트 측에서 요청 수를 적극적으로 줄이고 QPS를 제한하여 앱을 제어하고 비율 제한을 완화할 수 있습니다. 또한 Google Cloud 콘솔에서 할당량 알림 및 모니터링을 설정하여 애플리케이션이 한도에 도달하기 전에 알림을 받을 수 있습니다.
할당량 이름
각 한도는 Google Cloud의 할당량 한도 이름 및 측정항목에 해당합니다. 요청이 한도를 초과하면 Data Manager API는 metadata.quota_limit의 ErrorInfo 표준 세부정보 페이로드에 할당량 한도 이름을 반환합니다.
| 할당량 한도 이름 | 서비스 | 작업 | 창 | 한도 |
|---|---|---|---|---|
IngestionMutateRequestsPerDayPerProject |
IngestionService |
변형 | 일 | 100,000 |
IngestionMutateRequestsPerMinutePerProject |
IngestionService |
변형 | 분 | 300 |
IngestionReadRequestsPerDayPerProject |
IngestionService |
읽기 | 일 | 100,000 |
IngestionReadRequestsPerMinutePerProject |
IngestionService |
읽기 | 분 | 300 |
ManagementMutateRequestsPerDayPerProject |
기타 모든 서비스 | 변형 | 일 | 50,000 |
ManagementMutateRequestsPerMinutePerProject |
기타 모든 서비스 | 변형 | 분 | 300 |
ManagementReadRequestsPerDayPerProject |
기타 모든 서비스 | 읽기 | 일 | 50,000 |
ManagementReadRequestsPerMinutePerProject |
기타 모든 서비스 | 읽기 | 분 | 300 |
ErrorInfo 페이로드에서 metadata.quota_limit를 검사하여 일일 한도 오류와 분당 한도 오류를 구분하고 일시적으로 일시중지하고 백오프를 사용하여 다시 시도할지 아니면 일일 할당량이 재설정될 때까지 일시중지할지 결정합니다.
자세한 내용은 할당량 및 비율 제한 오류를 참조하세요.
비율 제한 및 동시 실행 처리
프로젝트 할당량을 초과하지 않고 처리량을 극대화하려면 다음 가이드라인을 따르세요.
요청당 일괄 레코드: 각 요청에 요청 한도까지 최대한 많은 레코드를 포함합니다 (요청당 최대 10,000개의
AudienceMember리소스 또는 2,000개의Event리소스).최대 10개의 동시 요청 전송: 분당 300개 요청 한도를 초과하지 않고 총 수집 시간을 줄이려면
IngestionService에 최대 10개의 동시 요청을 전송합니다.백오프를 사용하여 분당 비율 제한 재시도: 요청이
RESOURCE_EXHAUSTED(HTTP429)로 실패하고metadata.quota_limit가 분당 제한 (예:IngestionMutateRequestsPerMinutePerProject)을 나타내는 경우 지터가 있는 지수 백오프를 사용하여 재시도합니다 (예: 재시도 사이에 1초, 2초, 4초 대기).일일 할당량 소진 시 일시중지:
metadata.quota_limit가 일일 한도 (예:IngestionMutateRequestsPerDayPerProject)를 나타내는 경우 즉시 다시 시도하지 마세요. 일일 할당량이 태평양 표준시 자정에 재설정될 때까지 요청을 일시중지합니다.
요청 한도
특정 요청에 대한 한도는 다음과 같습니다.
IngestAudienceMembersRequest및RemoveAudienceMembersRequest:audience_members목록의AudienceMember리소스 10,000개AudienceMember의UserData에 있는 사용자 식별자 10개destinations목록에 있는Destination리소스 10개
RemoveAllAudienceMembersRequest:destinations목록에 있는Destination리소스 10개
-
events목록의Event리소스 2,000개Event의UserData에 있는 사용자 식별자 10개destinations목록에 있는Destination리소스 10개