Cuotas de Serverless para Apache Spark

Las cuotas de la API de Serverless para Apache Spark cuentan con unos límites que se aplican a nivel de proyecto y región. Estas cuotas se renuevan cada 60 segundos (es decir, cada minuto).

En la siguiente tabla se describen los tipos predeterminados de cuota de API de Serverless para Apache Spark por proyecto, los límites que existen en cada caso y los métodos a los que se aplican.

Tipo de cuota Límite Métodos de API o descripción
ClusterOperationRequestsPerMinutePerProjectPerRegion 200 CancelOperation (la cuota de cancelación de operaciones por lotes se comparte con la cuota de cancelación de operaciones de clúster).
BatchOperationRequestsPerMinutePerProjectPerRegion 200 CreateBatch, DeleteBatch
SessionOperationRequestsPerMinutePerProjectPerRegion 200 CreateSession, DeleteSession y TerminateSession
DefaultRequestsPerMinutePerProjectPerRegion 7500 GetBatch, ListBatches, GetSession, ListSessions
ActiveOperationsPerProjectPerRegion 5000 Límite del número total de operaciones activas simultáneas de todos los tipos en un proyecto de una región.

Otras cuotas Google Cloud

Los procesos por lotes de Apache Spark sin servidor utilizan otros Google Cloud productos. que tienen cuotas a nivel de proyecto en las que se incluyen algunas aplicables al uso de Serverless para Apache Spark. Algunos servicios se deben usar obligatoriamente para poder utilizar Serverless para Apache Spark, como Compute Engine y Cloud Storage, mientras que otros servicios como BigQuery y Bigtable se pueden usar con Serverless para Apache Spark de manera opcional.

Servicios obligatorios

Los siguientes servicios tienen unos límites de cuota concretos y son obligatorios para crear lotes de Serverless para Apache Spark.

Compute Engine

Los lotes de Apache Spark sin servidor consumen las siguientes cuotas de recursos de Compute Engine:

Nivel de computación Cuota
Estándar CPUS
Premium N2_CPUS
Nivel de disco Cuota
Estándar DISKS_TOTAL_GB
Premium LOCAL_SSD_TOTAL_GB_PER_VM_FAMILY con la familia de VMs N2
Acelerador de GPU Cuota
L4 NVIDIA_L4_GPUS
A100 40 GB NVIDIA_A100_GPUS
A100 80 GB NVIDIA_A100_80GB_GPUS

Las cuotas de Compute Engine se dividen entre límites globales y regionales. Estos límites se aplican a los lotes que crees. Por ejemplo, para ejecutar un lote de Spark con 4 núcleos de controlador (spark.driver.cores=4) y dos ejecutores con 4 núcleos cada uno (spark.executor.cores=4), tendrás que utilizar 12 CPU virtuales (4 * 3). El uso que se haga del lote se contabilizará a efectos del límite de cuota regional de 24 CPU virtuales.

Recursos de lote predeterminados

Al crear un lote con la configuración predeterminada, se utilizan los siguientes recursos de Compute Engine:

Elemento Recursos utilizados
CPU virtuales 12
Instancias de máquina virtual (VM) 3
Disco persistente 1200 GiB

Cloud Logging

Serverless para Apache Spark guarda los registros y la salida de los procesos por lotes en Cloud Logging. La cuota de Cloud Logging se aplica a tus lotes de Serverless para Apache Spark.

Servicios opcionales

Los siguientes servicios tienen límites de cuota y se pueden usar con lotes de Serverless para Apache Spark de forma opcional.

BigQuery

Al leer o escribir datos en BigQuery, se aplican las cuotas de dicho servicio.

Bigtable

Al leer o escribir datos en Bigtable, se aplican las cuotas de dicho servicio.

Identificar cargas de trabajo con limitaciones de cuota o de dirección IP

Puedes usar las siguientes consultas de Cloud Logging para identificar las cargas de trabajo de Serverless para Apache Spark que han alcanzado tu cuota o que no se han podido escalar debido al agotamiento de las direcciones IP.

Consulta de cuota:

jsonPayload.@type="type.googleapis.com/google.cloud.dataproc.logging.AutoscalerLog"
jsonPayload.recommendation.outputs.constraintsReached="SCALING_CAPPED_DUE_TO_LACK_OF_QUOTA"

Consulta de agotamiento de direcciones IP:

jsonPayload.@type="type.googleapis.com/google.cloud.dataproc.logging.AutoscalerLog"
jsonPayload.status.details =~".*Insufficient free IP addresses.*"