Traduzione non aggiornata
Se il vostro notebook include API Spark o volete creare modelli di apprendimento automatico o flussi di modelli con runtime Spark, dovete associare lo strumento a un servizio o ambiente Spark. Con gli ambienti Spark, è possibile configurare la dimensione del driver Spark e la dimensione e il numero degli esecutori.
- Opzioni di scintilla
- Definizioni predefinite dell'ambiente
- Quaderni e ambienti Spark
- File system su un cluster Spark
- Log del runtime
Opzioni di scintilla
In Watson Studio, è possibile utilizzare:
Gli ambienti Spark offerti da Watson Studio.
Tutti gli utenti di Watson Studio possono creare ambienti Spark con diverse configurazioni hardware e software. Gli ambienti Spark offrono kernel Spark come servizioSparkR, PySpark e Scala). Ogni kernel riceve un cluster Spark dedicato ed esecutori Spark. Gli ambienti Spark consumano ore unitarie di capacità (CUH) che vengono tracciate.
Servizi Spark offerti da IBM Cloud.
Con IBM Analytics Engine, viene offerta la Hortonworks Data Platform su IBM Cloud. Si ottiene una macchina virtuale per ogni nodo di calcolo del cluster e il proprio HDFS locale. Si ottiene Spark e l'intero ecosistema Hadoop. L'utente ha accesso alla shell e può anche creare quaderni. IBM Analytics Engine non è offerto nell'ambito di Watson Studio; deve essere acquistato separatamente tramite IBM Cloud. Vedere Aggiungi servizi associati.
Definizioni predefinite dell'ambiente
È possibile utilizzare le definizioni predefinite dell'ambiente Spark per iniziare rapidamente a utilizzare i notebook Spark negli strumenti di Watson Studio, senza dover creare definizioni di ambiente personalizzate. Le definizioni degli ambienti predefiniti sono elencate nella pagina Ambienti del progetto.
Ambiente | Configurazione hardware |
---|---|
Default Spark 3.0 & Python 3.7 |
2 Esecutori ciascuno: 1 vCPU e 4 GB di RAM; Driver: 1 vCPU e 4 GB di RAM |
Default Spark 3.0 & R 3.6 |
2 Esecutori ciascuno: 1 vCPU e 4 GB di RAM; Driver: 1 vCPU e 4 GB di RAM |
Default Spark 3.0 & Scala 2.12 |
2 Esecutori ciascuno: 1 vCPU e 4 GB di RAM; Driver: 1 vCPU e 4 GB di RAM |
Default Spark 2.4 & Python 3.7 |
2 Esecutori ciascuno: 1 vCPU e 4 GB di RAM; Driver: 1 vCPU e 4 GB di RAM |
Default Spark 2.4 & R 3.6 |
2 Esecutori ciascuno: 1 vCPU e 4 GB di RAM; Driver: 1 vCPU e 4 GB di RAM |
Default Spark 2.4 & Scala 2.11 |
2 Esecutori ciascuno: 1 vCPU e 4 GB di RAM; Driver: 1 vCPU e 4 GB di RAM |
Default Spark 2.3 & Scala 2.11 |
2 Esecutori ciascuno: 1 vCPU e 4 GB di RAM; Driver: 1 vCPU e 4 GB di RAM |
Default Spark 2.3 & R 2.4 |
2 Esecutori ciascuno: 1 vCPU e 4 GB di RAM; Driver: 1 vCPU e 4 GB di RAM |
Nota: Quando si avvia un ambiente Spark, sono necessarie risorse aggiuntive per Jupyter Enterprise Gateway, Spark Master e i demoni Spark worker. Queste risorse aggiuntive ammontano a 1 vCPU e 2 GB di RAM per il driver e a 1 GB di RAM per ogni executor. È necessario tenere conto di queste risorse extra quando si seleziona la dimensione hardware di un ambiente Spark. Ad esempio: se si crea un notebook e si seleziona Default Spark 3.0 & Python 3.7
, il cluster Spark consuma 3 vCPU e 12 GB di RAM ma, poiché 1 vCPU e 4 GB di RAM sono necessari per le risorse extra, le risorse rimanenti per il notebook sono 2 vCPU e 8 GB di RAM.
Quaderni e ambienti Spark
Quando si crea un blocco note, è possibile selezionare il runtime di Spark in cui si desidera che il blocco note venga eseguito. Potete selezionare una definizione di ambiente Spark predefinita o una definizione di ambiente Spark creata da voi dalla pagina Ambienti del vostro progetto.
È possibile creare più di un blocco note e selezionare la stessa definizione di ambiente Spark. Ogni notebook associato all'ambiente ha il proprio cluster Spark dedicato e nessuna risorsa viene condivisa. Ad esempio, se si creano due notebook utilizzando la stessa definizione di ambiente Spark, vengono avviati due cluster Spark, uno per ogni notebook, il che significa che ogni notebook ha il proprio driver Spark e il proprio set di esecutori Spark.
È possibile imparare a utilizzare gli ambienti Spark in Watson Studio aprendo i seguenti notebook di esempio:
File system su un cluster Spark
Se si desidera condividere i file tra gli esecutori e il driver o il kernel di un cluster Spark, è possibile utilizzare il file system condiviso in /home/spark/shared
.
Se si desidera utilizzare librerie personalizzate, è possibile memorizzarle sotto /home/spark/shared/user-libs/
. Sotto /home/spark/shared/user-libs/
ci sono quattro sottodirectory preconfigurate per essere rese disponibili ai runtime Python, R e Scala o Java.
Le tabelle seguenti elencano le sottodirectory preconfigurate in cui è possibile aggiungere le librerie personalizzate.
Cartella | Tipo di biblioteca |
---|---|
/home/spark/shared/user-libs/python3/ |
Librerie Python 3 |
/home/spark/shared/user-libs/R/ |
Pacchetti R |
/home/spark/shared/user-libs/spark2/ |
File JAR di Java o Scala |
Per condividere le librerie tra un driver Spark e gli esecutori:
- Scaricare le librerie personalizzate o i file JAR nella directory preconfigurata appropriata.
- Riavviare il kernel dal menu del notebook facendo clic su Kernel > Riavvia kernel. Questo carica le librerie personalizzate o i file JAR in Spark.
Si noti che queste librerie non sono persistenti. Quando si arresta il runtime dell'ambiente e lo si riavvia successivamente, è necessario caricare nuovamente le librerie.
Log del runtime
Quando un runtime Spark viene interrotto, i log accumulati vengono aggiunti al bucket IBM Cloud Object Storage associato al progetto. Se si desidera visualizzare questi registri, scaricarli dal bucket IBM Cloud Object Storage.