O Serverless para Apache Spark tem limites de quota de API que são aplicados ao nível do projeto e da região. As quotas são repostas a cada sessenta segundos (um minuto).
A tabela seguinte apresenta os tipos de quotas da API Serverless for Apache Spark específicos e predefinidos por projeto, os limites de quotas e os métodos aos quais se aplicam.
Tipo de quota | Limite | Métodos da API ou descrição |
---|---|---|
ClusterOperationRequestsPerMinutePerProjectPerRegion | 200 | CancelOperation (a quota de operação em lote de cancelamento é partilhada com a quota de operação de cluster de cancelamento). |
BatchOperationRequestsPerMinutePerProjectPerRegion | 200 | CreateBatch, DeleteBatch |
SessionOperationRequestsPerMinutePerProjectPerRegion | 200 | CreateSession, DeleteSession, TerminateSession |
DefaultRequestsPerMinutePerProjectPerRegion | 7500 | GetBatch, ListBatches, GetSession, ListSessions |
ActiveOperationsPerProjectPerRegion | 5000 | Limite do número total de operações ativas simultâneas de todos os tipos num projeto numa região. |
Outras Google Cloud cotas
Os lotes sem servidor para o Apache Spark usam outros Google Cloud produtos. Estes produtos têm quotas ao nível do projeto, que incluem quotas aplicáveis à utilização do Serverless para Apache Spark. Alguns serviços são necessários para usar o Serverless para Apache Spark, como o Compute Engine e o Cloud Storage. Outros serviços, como o BigQuery e o Bigtable, podem ser usados opcionalmente com o Serverless para Apache Spark.
Serviços necessários
Os seguintes serviços, que aplicam limites de quota, são necessários para criar processamentos sem servidor para o Apache Spark.
Compute Engine
Os lotes sem servidor para o Apache Spark consomem as seguintes quotas de recursos do Compute Engine:
Nível de computação | Quota |
---|---|
Standard | CPUS |
Premium | N2_CPUS |
Nível de disco | Quota |
Standard | DISKS_TOTAL_GB |
Premium | LOCAL_SSD_TOTAL_GB_PER_VM_FAMILY com a família de VMs N2 |
Acelerador de GPU | Quota |
L4 | NVIDIA_L4_GPUS |
A100 40GB | NVIDIA_A100_GPUS |
A100 80GB | NVIDIA_A100_80GB_GPUS |
As quotas do Compute Engine
estão divididas em limites regionais e globais. Estes limites aplicam-se aos lotes que
criar. Por exemplo, para executar um lote do Spark com 4 núcleos do controlador (spark.driver.cores=4
) e dois executores com 4 núcleos cada (spark.executor.cores=4
), vai usar 12 CPUs virtuais (4 * 3
). Esta utilização de lotes é contabilizada para o limite de quota regional de 24 CPUs virtuais.
Recursos de lote predefinidos
Quando cria um lote com as predefinições, são usados os seguintes recursos do Compute Engine:
Item | Recursos usados |
---|---|
CPUs virtuais | 12 |
Instâncias de máquinas virtuais (VMs) | 3 |
Disco persistente | 1200 GiB |
Cloud Logging
O Serverless para Apache Spark guarda a saída em lote e os registos no Cloud Logging. A quota do Cloud Logging aplica-se aos seus lotes sem servidor para Apache Spark.
Serviços opcionais
Os seguintes serviços, que têm limites de quota, podem ser usados opcionalmente com o Serverless para lotes do Apache Spark.
BigQuery
Quando lê ou escreve dados no BigQuery, aplica-se a quota do BigQuery.
Bigtable
Quando lê ou escreve dados no Bigtable, aplica-se a quota do Bigtable.
Identifique cargas de trabalho com limitações de quota ou de endereço IP
Pode usar as seguintes consultas do Cloud Logging para identificar cargas de trabalho sem servidor para o Apache Spark que atingiram a sua quota ou não conseguiram dimensionar devido ao esgotamento do endereço IP.
Consulta de quota:
jsonPayload.@type="type.googleapis.com/google.cloud.dataproc.logging.AutoscalerLog"
jsonPayload.recommendation.outputs.constraintsReached="SCALING_CAPPED_DUE_TO_LACK_OF_QUOTA"
Consulta de esgotamento de endereços IP:
jsonPayload.@type="type.googleapis.com/google.cloud.dataproc.logging.AutoscalerLog"
jsonPayload.status.details =~".*Insufficient free IP addresses.*"