Questa pagina contiene le domande frequenti sul deployment serverless di Managed Service per Apache Spark con le relative risposte. Se non diversamente specificato, queste informazioni si applicano solo ai deployment serverless di Managed Service per Apache Spark, non ai cluster.
Quando devo utilizzare il deployment serverless di Managed Service per Apache Spark anziché il deployment del cluster Managed Service per Apache Spark?
Deployment serverless di Managed Service per Apache Spark:
- Supporta i workload batch di Spark e le sessioni interattive nei notebook Jupyter con kernel PySpark.
- Crea e gestisce l'infrastruttura dei workload e delle sessioni interattive.
Deployment del cluster Managed Service per Apache Spark:
Supporta l'invio di diversi tipi di job Spark e job basati su altri componenti open source, come Flink, Hadoop, Hive, Pig, Presto e altri.
Non crea e non gestisce l'infrastruttura. Crea e gestisci i cluster Managed Service per Apache Spark.
Che cosa posso fare con il deployment serverless di Managed Service per Apache Spark?
Eseguire job di streaming utilizzando le librerie di streaming di Spark. Nota: lo streaming non è un servizio gestito, pertanto devi gestire il checkpointing e i riavvii.
Addestrare i modelli utilizzando Spark MLlib.
Utilizzare i notebook SQL interattivi per l'esplorazione dei dati, i grafici, le serie temporali e l'analisi geospaziale.
Orchestrare i workload Managed Service per Apache Spark con Cloud Composer, un servizio Apache Airflow gestito.
Come faccio a configurare un piano di esecuzione dei workload?
Puoi eseguire i workload in contemporanea o in sequenza. Il piano di esecuzione influisce sulla Google Cloud quota di risorse. Puoi eseguire in parallelo tutti i workload consentiti dalle quote di risorse batch.
Posso utilizzare un'immagine personalizzata con il deployment serverless di Managed Service per Apache Spark?
- Sì. Puoi utilizzare un'immagine container personalizzata anziché l'immagine container predefinita. Consulta Utilizzare container personalizzati con Managed Service per Apache Spark.
Posso specificare le risorse di memoria e disco per i workload Spark di Managed Service per Apache Spark?
Sì. Puoi specificare i livelli di calcolo e disco dell'executor e del driver premium e la quantità di risorse di calcolo e disco del driver e dell'executor da allocare quando invii un workload (vedi Proprietà di allocazione delle risorse).
Come faccio a specificare l'intervallo di indirizzi IP per la mia rete VPC Managed Service per Apache Spark?
I workload Managed Service per Apache Spark vengono eseguiti nel tuo ambiente.
Ogni driver Spark e ogni executor Spark in un workload Spark serverless consuma un
indirizzo IP interno nella rete VPC Managed Service per Apache Spark.
/16 è un intervallo di indirizzi
CIDR in genere specificato dall'utente
per una rete VPC Managed Service per Apache Spark.
Puoi limitare l'intervallo di indirizzi IP della rete in base al numero di workload simultanei che prevedi di eseguire.
Managed Service per Apache Spark supporta la residenza dei dati?
Sì. Specifichi la regione in cui viene elaborato il workload. Individua i set di dati di input e output nella regione specificata.
In che modo Managed Service per Apache Spark seleziona una zona all'interno della regione specificata per eseguire il workload?
Managed Service per Apache Spark seleziona la zona di Compute Engine in cui esegue un workload in base alla capacità e alla disponibilità. Se una zona diventa non disponibile dopo l'avvio di un workload, quest'ultimo non riesce e devi inviarlo di nuovo.
In che modo i workload Managed Service per Apache Spark utilizzano le risorse di calcolo?
Ogni workload viene eseguito sulle proprie risorse di calcolo. Più invii batch non condividono o riutilizzano le risorse di calcolo.
Best Practices:
Ottimizza il workload per i job di media durata, non per quelli di breve durata.
Persisti i dati a cui accedono più workload in Cloud Storage.
Dove posso trovare informazioni su annunci, funzionalità, correzioni di bug, problemi noti e ritiri di Managed Service per Apache Spark?
Consulta le note di rilascio di Managed Service per Apache Spark.
I workload simultanei competono per le risorse?
I workload Managed Service per Apache Spark competono per le risorse solo se la quota di risorse non è sufficiente per eseguire tutti i workload in esecuzione simultanea. In caso contrario, i workload sono completamente isolati l'uno dall'altro.
Come viene allocata la quota di Managed Service per Apache Spark?
I batch Managed Service per Apache Spark consumano risorse Google Cloud . Per saperne di più, consulta le quote di Dataproc Serverless.
Devo configurare un server di cronologia permanente Managed Service per Apache Spark?
La configurazione di un server di cronologia permanente (PHS) da utilizzare con Managed Service per Apache Spark è facoltativa.Puoi utilizzare il PHS per visualizzare gli eventi Spark e altri log in un bucket Cloud Storage specificato fino al periodo di conservazione (TTL) di 90 giorni del bucket di staging e gestione temporanea standard di Managed Service per Apache Spark e dopo questo periodo.
Quali log Spark di Managed Service per Apache Spark sono disponibili?
I log del driver e dell'executor Spark sono disponibili in Cloud Logging durante e dopo l'esecuzione del workload Spark. Inoltre, le applicazioni Spark sono visibili nell' interfaccia web del server di cronologia permanente (PHS) durante l'esecuzione del workload (seleziona PHS > Applicazioni incomplete nell'interfaccia utente del PHS).
Se configuri un PHS Managed Service per Apache Spark, questo fornisce l'accesso permanente ai log degli eventi Spark salvati in Cloud Storage, che forniscono informazioni sull'esecuzione dell'app Spark, come gli eventi DAG ed executor.
Posso impostare il numero di executor per il mio workload Spark?
Sì. Puoi impostare il numero di executor per un workload Spark utilizzando la
spark.executor.instances
proprietà. Tuttavia, il numero totale di core che un workload può utilizzare è più importante del numero di executor, perché Spark esegue 1 attività per core. Ad esempio, se un workload ha quattro executor con due core ciascuno, eseguirà 4 * 2 = 8 attività contemporaneamente. E eseguirà anche lo stesso numero di attività per un workload con due executor con quattro core ciascuno. Poiché il numero di core per ogni workload è lo stesso, eseguiranno lo stesso numero di attività. Puoi utilizzare la
spark.executor.cores
proprietà per impostare il numero di core per executor per il tuo workload Managed Service per Apache Spark.
Quali metriche Spark utilizza Managed Service per Apache Spark per la scalabilità automatica?
Managed Service per Apache Spark esamina le metriche di allocazione dinamica di Spark maximum-needed e running per determinare se eseguire lo scale up o lo scale down.
Consulta Scalabilità automatica di Managed Service per Apache Spark.
Posso configurare il comportamento di scalabilità automatica di Managed Service per Apache Spark utilizzando le proprietà Spark?
Sì. La scalabilità automatica di Managed Service per Apache Spark si basa sull'allocazione dinamica di Spark ed è attivata per impostazione predefinita. Puoi modificare le seguenti proprietà Spark e proprietà di allocazione dinamica di Spark:
spark.executor.instancesspark.dynamicAllocation.initialExecutorsspark.dynamicAllocation.minExecutorsspark.dynamicAllocation.maxExecutors
Perché devo pacchettizzare il mio codice in un file JAR per inviare il mio workload Spark?
Spark è scritto in Scala, il che significa che sia il driver che i processi worker operano come processi JVM. Nei linguaggi JVM, il file JAR è il modo principale per pacchettizzare il codice. Passi il file JAR a Managed Service per Apache Spark quando invii un workload.