Managed Service for Apache Spark ha limiti di quota API applicati a livello di progetto e di regione. Le quote vengono reimpostate ogni 60 secondi (1 minuto).
La tabella seguente elenca i tipi di quota, i limiti di quota e i metodi a cui si applicano per l'API Managed Service for Apache Spark per progetto, sia specifici che predefiniti.
| Tipo di quota | Limite | Metodi o descrizione dell'API |
|---|---|---|
| ClusterOperationRequestsPerMinutePerProjectPerRegion | 200 | CancelOperation (la quota per l'annullamento delle operazioni batch è condivisa con la quota per l'annullamento delle operazioni sui cluster). |
| BatchOperationRequestsPerMinutePerProjectPerRegion | 200 | CreateBatch, DeleteBatch |
| SessionOperationRequestsPerMinutePerProjectPerRegion | 200 | CreateSession, DeleteSession, TerminateSession |
| DefaultRequestsPerMinutePerProjectPerRegion | 7500 | GetBatch, ListBatches, GetSession, ListSessions |
| ActiveOperationsPerProjectPerRegion | 5000 | Limite al numero totale di operazioni attive simultanee di tutti i tipi in un progetto in una regione. |
Quota di DCU serverless di Managed Service for Apache Spark
A partire dalla versione 4.0 del runtime serverless di Managed Service for Apache Spark, la quota di Data Compute Unit (DCU) di un progetto (dataproc.googleapis.com/data_compute_units), anziché la quota di Compute Engine, gestisce e limita l'utilizzo delle risorse di computing dei workload batch serverless e delle sessioni interattive di Managed Service for Apache Spark (l'utilizzo della quota di Compute Engine sottostante viene reindirizzato a un progetto producer di Managed Service for Apache Spark dedicato).
Puoi visualizzare e modificare la quota di DCU nella pagina Quote della console Google Cloud nell'API Dataproc. Puoi attivare l'aggiustamento delle quote per aumentare la quota di DCU quando l'utilizzo si avvicina al limite.
Calcola il consumo di DCU
L'utilizzo delle DCU viene calcolato per nodo in base alla forma della VM, utilizzando la stessa formula dei prezzi delle DCU serverless di Managed Service for Apache Spark:
- 0,6 DCU per vCPU.
- 0,1 DCU per GB di memoria, fino a 8 GB per vCPU.
- 0,2 DCU per GB di memoria superiore a 8 GB per vCPU (memoria estesa).
- I nodi di livello Premium contano 1,5 volte le DCU della stessa forma del livello Standard.
Le DCU di un pool di nodi vengono arrotondate per eccesso al numero intero più vicino:
DCUs = ceiling(nodes × DCUs per node)
Esempio: un nodo di livello Standard con 4 vCPU e 16 GB di memoria utilizza
4 × 0.6 + 16 × 0.1 = 4 DCU. Un batch con 1 driver e 10 esecutori di questa forma utilizza 44 DCU. Lo stesso batch nel livello Premium utilizza 66 DCU.
Limitazioni
Alle quote DCU si applicano le seguenti limitazioni:
- Versioni di runtime: le quote DCU si applicano alla versione di runtime serverless di Managed Service for Apache Spark
4.0e successive. I workload che utilizzano versioni di runtime precedenti alla4.0non consumano la quota di DCU e continuano a consumare la quota di Compute Engine di un progetto. - Quote non supportate: le quote per GPU, prenotazioni e Compute Engine globale non sono supportate nel modello di quota DCU.
Altre Google Cloud quote
I batch di Managed Service for Apache Spark utilizzano altri prodotti Google Cloud . Questi prodotti hanno quote a livello di progetto, incluse quelle che si applicano all'utilizzo di Managed Service for Apache Spark. Alcuni servizi sono obbligatori per utilizzare Managed Service for Apache Spark, ad esempio Compute Engine e Cloud Storage. Altri servizi, come BigQuery e Bigtable, possono essere utilizzati facoltativamente con Managed Service for Apache Spark.
Servizi obbligatori
Per creare batch di Managed Service for Apache Spark, sono necessari i seguenti servizi, che applicano i limiti di quota.
Compute Engine
I workload batch di Managed Service for Apache Spark possono selezionare una varietà di risorse Compute Engine:
Per mitigare i problemi di disponibilità con CPU e dischi, Managed Service for Apache Spark supporta il fallback su più famiglie di macchine e tipi di disco. Ad esempio, nel livello Premium, un workload batch può eseguire il fallback a
N2con SSD permanente,N2Dcon SSD locale,N2Dcon disco permanente,N4con Hyperdisk bilanciato oN4Dcon Hyperdisk bilanciato.Un workload batch non riesce se non dispone di una quota sufficiente per utilizzare le risorse di selezione di riserva.
La tabella seguente elenca le quote delle risorse di Compute Engine che si applicano ai workload batch di Managed Service for Apache Spark.
| Livello di computing | Quota |
|---|---|
| Standard | CPUS |
| Premium |
|
| Livello disco | Quota |
| Standard | DISKS_TOTAL_GB |
| Premium |
|
| Acceleratore GPU | Quota |
| L4 | NVIDIA_L4_GPUS |
| A100 da 40 GB | NVIDIA_A100_GPUS |
| A100 da 80 GB | NVIDIA_A100_80GB_GPUS |
Le quote di Compute Engine sono suddivise in limiti regionali e globali. Questi limiti si applicano ai batch che crei. Ad esempio, per eseguire un batch Spark con 4 core del driver (spark.driver.cores=4) e due esecutori con 4 core ciascuno (spark.executor.cores=4), utilizzi 12 CPU virtuali (4 * 3). Questo utilizzo del batch viene conteggiato ai fini del limite di quota regionale di 24 CPU virtuali.
Risorse batch predefinite
Quando crei un batch con le impostazioni predefinite, vengono utilizzate le seguenti risorse Compute Engine:
| Elemento | Risorse utilizzate |
|---|---|
| CPU virtuali | 12 |
| Istanze di macchine virtuali (VM) | 3 |
| Persistent Disk | 1200 GiB |
Logging
Managed Service for Apache Spark salva i log e l'output batch in Cloud Logging. La quota di Logging si applica ai batch di Managed Service for Apache Spark.
Servizi facoltativi
I seguenti servizi, che hanno limiti di quota, possono essere utilizzati facoltativamente con i batch di Managed Service for Apache Spark.
BigQuery
Quando leggi o scrivi dati in BigQuery, si applica la quota di BigQuery.
Bigtable
Quando leggi o scrivi dati in Bigtable, si applica la quota di Bigtable.
Identifica i workload con limitazioni relative alla quota o agli indirizzi IP
Puoi utilizzare le seguenti query di Logging per identificare i workload di Managed Service for Apache Spark che hanno raggiunto la quota o non sono stati in grado di scalare a causa dell'esaurimento degli indirizzi IP.
Query di quota:
jsonPayload.@type="type.googleapis.com/google.cloud.dataproc.logging.AutoscalerLog"