Crea sessioni interattive e profili di runtime

Questo documento mostra come creare sessioni interattive e profili di runtime di Managed Service for Apache Spark, chiamati modelli di sessione in Google Cloud CLI e nell'API Dataproc. Un profilo di runtime è un insieme riutilizzabile di impostazioni di runtime di Serverless Spark, ad esempio il livello di computing e la configurazione dell'esecutore, che puoi utilizzare per creare notebook e sessioni interattivi.

Crea una sessione interattiva

Puoi utilizzare Google Cloud CLI o l'API Managed Service for Apache Spark per creare una sessione interattiva di Managed Service for Apache Spark.

gcloud

Puoi utilizzare il comando gcloud beta dataproc sessions create spark SESSION_ID per creare una sessione interattiva di Managed Service for Apache Spark:

gcloud beta dataproc sessions create spark SESSION_ID \
    --location=REGION \
    optional flags ...

Sostituisci o aggiungi quanto segue:

REST

Puoi utilizzare il metodo API sessions.create di Managed Service for Apache Spark per creare una sessione interattiva di Managed Service for Apache Spark. Configura i seguenti campi della richiesta:

Crea un profilo di runtime

Un profilo di runtime di Managed Service for Apache Spark (a volte chiamato modello di sessione) definisce le impostazioni di configurazione riutilizzabili per la creazione di sessioni interattive di Managed Service for Apache Spark. Puoi utilizzare la console Google Cloud , gcloud CLI o l'API Managed Service for Apache Spark per creare un profilo di runtime. In gcloud CLI e nell'API Dataproc, i profili di runtime sono chiamati session templates.

Console

Per creare un profilo di runtime di Managed Service for Apache Spark utilizzando la consoleGoogle Cloud , completa i seguenti passaggi:

  1. Nella console Google Cloud , vai alla pagina Profili di runtime.

    Vai a Profili di runtime

  2. Fai clic su Crea.

  3. Nella pagina Crea un profilo di runtime, configura le seguenti impostazioni principali:

    • Nome visualizzato: obbligatorio. Inserisci un nome visualizzato per il profilo di runtime o accetta il nome generato precompilato. Il nome visualizzato deve contenere almeno una lettera o un numero e viene salvato come nome visualizzato di primo livello per tutti i tipi di sessione, incluso Spark Connect. Il Nome profilo di runtime è l'ID risorsa e viene derivato automaticamente dal nome visualizzato convertendo le lettere in minuscolo e i caratteri non validi in trattini, mostrati come suggerimento sotto il campo. Per personalizzare l'ID risorsa separatamente dal nome visualizzato, espandi Configurazione aggiuntiva e modifica Configurazione runtime.

    • Regione: obbligatoria. Seleziona una regione di Compute Engine disponibile per le sessioni che utilizzano questo profilo di runtime. La regione predefinita è us-east4 (in precedenza us-central1) e l'elenco mostra le descrizioni delle regioni.

    • (Facoltativo) Descrizione. Inserisci una descrizione per identificare il profilo di runtime.

    • Livello: seleziona il livello di Managed Service for Apache Spark per l'esecuzione del workload:

      • Premium: predefinito. Ottimizza le query complesse o sensibili alla latenza con motori di accelerazione e supporta forme di esecutori con memoria elevata e accelerazione GPU. Quando selezioni Premium, la casella di controllo Abilita Lightning Engine per accelerare le prestazioni viene visualizzata e selezionata per impostazione predefinita per accelerare i job Spark con Lightning Engine, che imposta spark.dataproc.engine=lightningEngine.

      • Standard: fornisce un ambiente di esecuzione Spark standard per il trattamento dati di routine. Le sessioni interattive vengono sempre eseguite nel livello Premium; la selezione di Standard influisce solo sull'esecuzione batch. Se scegli Standard, il motore Lightning viene disattivato, le forme della macchina vengono limitate alle forme CPU standard (standard-4, standard-8 o standard-16) e sono richiesti i dischi HDD (standard). Se passi da Premium a Standard, le forme con memoria elevata o GPU vengono reimpostate su standard-4 e i dischi SSD vengono reimpostati su un HDD 200 GiB.

    • Configurazione dell'esecutore: seleziona la modalità di dimensionamento del computing e la forma della macchina per gli esecutori e il driver Spark che eseguono il workload:

      • Generale: predefinito. Fornisce forme di macchine solo CPU adatte per workload generali di estrazione, trasformazione e caricamento (ETL). Nell'elenco Tipo di esecutore, seleziona una forma Memoria elevata, ad esempio highmem-4 (predefinita) con 4 vCPU e 32 GB di memoria, highmem-8 con 8 vCPU e 64 GB di memoria o highmem-16 con 16 vCPU e 128 GB di memoria, oppure seleziona una forma Standard, ad esempio standard-4 con 4 vCPU e 16 GB di memoria, standard-8 con 8 vCPU e 32 GB di memoria o standard-16 con 16 vCPU e 64 GB di memoria. Le forme con memoria elevata sono disponibili solo nel livello Premium.

      • Accelerata: fornisce tipi di macchine con GPU collegata adatti per workload di data science e addestramento e inferenza di AI o ML. Se selezioni una forma Accelerata, il livello passa automaticamente a Premium e il livello del disco a SSD (premium) con una dimensione predefinita di 375 GiB. Nell'elenco Tipo di esecutore, seleziona una forma L4 con 4, 8, 12, 16, 24, 48 o 96 vCPU oppure seleziona una forma A100, ad esempio A100 40GB (12 vCPU) o A100 80GB (12 vCPU).

  4. (Facoltativo) Per personalizzare le impostazioni avanzate di runtime, computing, scalabilità automatica, metastore, rete, sicurezza, ciclo di vita o proprietà, fai clic su Configurazione aggiuntiva per espandere il riquadro. Accanto a ogni categoria che vuoi personalizzare, fai clic su Modifica, configura le impostazioni nel riquadro e poi fai clic su Salva:

    • Configurazione di runtime: configura l'identificatore di runtime, la versione di Spark, l'immagine container, il bucket di gestione temporanea e il Package Repository Python:

      • Nome profilo di runtime: obbligatorio. Accetta l'ID risorsa generato derivato dal nome visualizzato o inserisci un ID personalizzato. L'ID deve essere composto da 4 a 63 caratteri, contenere solo lettere minuscole, numeri e trattini, iniziare e terminare con una lettera minuscola o un numero e non può essere modificato dopo la creazione del profilo di runtime.

      • Versione di runtime Spark: obbligatoria. Seleziona una versione del runtime di Managed Service for Apache Spark supportata.

      • Immagine Spark personalizzata: facoltativa. Inserisci l'URI Artifact Registry o Container Registry di un'immagine container personalizzata che include dipendenze Java o Python personalizzate.

      • Bucket di gestione temporanea: facoltativo. Fai clic su Sfoglia per selezionare o creare un bucket di gestione temporanea di Cloud Storage per archiviare le dipendenze dei workload, l'output del driver dei job e i file di configurazione. Se non viene specificato, Managed Service for Apache Spark gestisce automaticamente il bucket di gestione temporanea (indicato da Auto nel riepilogo).

      • Repository dei pacchetti Python: facoltativo. Inserisci l'URI di un repository personalizzato, ad esempio https://pypi.org/simple, per installare i pacchetti Python. Se non viene specificato, i pacchetti vengono installati dalla cache pull-through PyPI gestita da Google (il riepilogo predefinito).

    • Configurazione di esecutore e driver: personalizza il livello di computing, il livello del disco, le dimensioni del disco e la configurazione del driver separata:

      • Livello: seleziona Premium, che include la casella di controllo facoltativa Abilita Lightning Engine per accelerare le prestazioni, o Standard.

      • Tipo di esecutore: seleziona una forma di macchina Generale High memory o Standard oppure una forma di macchina Accelerata L4 o A100.

      • Livello disco: seleziona HDD (standard) o SSD (premium). HDD (standard) è l'impostazione predefinita per le forme della CPU ed è obbligatoria per il livello Standard. SSD (premium) è disponibile nel livello Premium per i workload con un numero elevato di shuffle o di spill ed è obbligatorio per le forme GPU Accelerated.

      • Dimensione disco: seleziona una dimensione del disco in GiB. HDD (standard) supporta da 200 GiB a 1500 GiB con incrementi di 100 GiB, con un valore predefinito di 200 GiB. SSD (premium) supporta 375 GiB, 750 GiB o 1500 GiB, con un valore predefinito di 375 GiB.

      • Utilizza una configurazione diversa per il driver: facoltativo. Per impostazione predefinita, il driver utilizza la stessa forma della macchina e la stessa configurazione del disco dell'esecutore. Seleziona questa casella di controllo per personalizzare in modo indipendente il tipo di macchina del driver, il livello del disco del driver e la dimensione del disco del driver.

    • Scalabilità automatica: configura l'allocazione dinamica delle risorse per scalare gli esecutori in base alla domanda del workload:

      • Attivato: selezionato per impostazione predefinita, imposta spark.dynamicAllocation.enabled. Deseleziona questa casella di controllo per disattivare la scalabilità automatica.

      • Esecutori iniziali: inserisci il numero iniziale di esecutori, che imposta spark.dynamicAllocation.initialExecutors. Il valore predefinito è 5. I valori validi sono compresi tra 2 e 2000 per le versioni runtime 2.3 e precedenti o tra 0 e 2000 per la versione runtime 3.0 e successive.

      • Numero minimo di esecutori: inserisci il numero minimo di esecutori, che imposta spark.dynamicAllocation.minExecutors. Il valore predefinito è 2 per le versioni runtime 2.3 e precedenti o 0 per la versione runtime 3.0 e successive, con un limite massimo di 2000.

      • Numero massimo di esecutori: inserisci il numero massimo di esecutori, che imposta spark.dynamicAllocation.maxExecutors. Il valore predefinito è 1000, con un limite massimo consentito di 2000.

    • Configurazione metastore: seleziona il metastore che gestisce i metadati del set di dati:

      • Catalogo di runtime Lakehouse: predefinito. Utilizza un catalogo di runtime Lakehouse serverless nel progetto corrente, con l'endpoint REST Iceberg abilitato per impostazione predefinita. Puoi specificare l'ID progetto e scegliere un ID catalogo esistente o definire un nuovo catalogo. Puoi anche selezionare la casella di controllo Endpoint Hive per specificare un ID progetto, un ID catalogo e un Nome catalogo dell'endpoint Hive.

      • Dataproc Metastore: collega un'istanza Hive Metastore (HMS) di Dataproc Metastore gestita. Seleziona il progetto in Progetto selezionato e scegli un'istanza di servizio nell'elenco Servizio Metastore.

      • Nessuno: disattiva l'integrazione del metastore per le sessioni che utilizzano questo profilo di runtime.

    • Rete e sicurezza: configura il networking VPC, le credenziali di esecuzione e le chiavi di crittografia:

      • Connetti il cluster: in Configurazione di rete, la console Google Cloud seleziona automaticamente una rete o una subnet idonea nella regione scelta. Se la regione scelta non ha una rete predefinita disponibile, si apre automaticamente Configurazione aggiuntiva e viene visualizzato un avviso che indica che la rete predefinita non è disponibile. In questo caso, il pulsante Crea rimane disabilitato finché non fai clic su Configura rete e selezioni una subnet disponibile. Puoi selezionare Reti in questo progetto per scegliere una Rete principale e una Subnet nel progetto corrente oppure selezionare Reti condivise dal progetto host per scegliere una subnet VPC condivisa. La subnet selezionata deve avere l'accesso privato Google (PGA) abilitato. Per i requisiti di connettività di rete, consulta Connettività di subnet aperta. Puoi anche inserire tag di rete facoltativi per applicare regole firewall e route alle VM dei workload.

      • Esegui i notebook con: seleziona Account utente, che è l'impostazione predefinita, per eseguire i notebook utilizzando le credenziali dell'utente finale oppure seleziona Service account per eseguire le sessioni con un service account personalizzato. Se selezioni Service account, devi specificare un account di servizio nel campo Service account.

      • Crittografia: seleziona Google-owned and Google-managed encryption key, che è l'impostazione predefinita, o seleziona Chiave Cloud KMS per criptare i dati del workload utilizzando una chiave di crittografia gestita dal cliente (CMEK).

    • Ciclo di vita della sessione: configura i limiti di interruzione automatica della sessione:

      • Max idle time: facoltativo. Inserisci un valore per Quantità di tempo di inattività massimo e seleziona un'Unità di tempo di inattività massimo in seconds, minutes, hours o days, da 10 minuti a 330 ore, per specificare per quanto tempo una sessione del notebook può rimanere inattiva prima di essere terminata automaticamente.

      • Tempo massimo della sessione: facoltativo. Inserisci una quantità di tempo massimo della sessione e seleziona un'unità di tempo massimo della sessione in seconds, minutes, hours o days, da 10 minuti a 330 ore, per specificare la durata massima di una sessione.

    • Altre personalizzazioni: aggiungi proprietà Spark personalizzate ed etichette delle risorse:

      • Proprietà Spark: facoltative. Fai clic su Aggiungi proprietà e inserisci le coppie Chiave e Valore per le proprietà Spark personalizzate. Le proprietà controllate da campi dedicati nel modulo (come livello di computing, dimensionamento di executor e driver, Lightning Engine, spark.dynamicAllocation.* e proprietà del catalogo Lakehouse) sono gestite da questi campi e sono nascoste nell'elenco in formato libero. Nella console Google Cloud , non includere il prefisso spark:.

      • Labels: facoltativo. Fai clic su Aggiungi etichetta e inserisci le coppie Chiave e Valore per allegare le etichette al profilo di runtime.

  5. Esamina i dettagli della configurazione nella scheda Riepilogo e l'utilizzo stimato delle unità di calcolo (DCU) nella scheda Stima dei prezzi sul lato destro della pagina. Per saperne di più sugli addebiti per le DCU, consulta Prezzi di Managed Service for Apache Spark.

  6. Fai clic su Crea.

gcloud

In gcloud CLI, i profili di runtime vengono gestiti come template di sessione. Non puoi creare direttamente un profilo di runtime di Managed Service for Apache Spark utilizzando un comando create in gcloud CLI, ma puoi utilizzare il comando gcloud beta dataproc session-templates import per creare o aggiornare un profilo di runtime da un file di configurazione YAML. Puoi anche esportare un profilo di runtime esistente utilizzando il comando gcloud beta dataproc session-templates export.

REST

Nell'API Managed Service for Apache Spark, i profili di runtime sono rappresentati dalle risorse SessionTemplate. Puoi utilizzare il metodo API sessionTemplates.create di Managed Service for Apache Spark per creare un profilo di runtime di Managed Service for Apache Spark. Configura i seguenti campi della richiesta: