Per ottenere il massimo da Dataproc, è utile comprendere i suoi componenti fondamentali. Questa guida illustra i concetti e le funzionalità principali di Dataproc e i vantaggi che offrono.
Il modello basato su cluster
Questo è il modo standard e incentrato sull'infrastruttura di utilizzare Dataproc. Ti offre il controllo completo di un insieme dedicato di macchine virtuali per le tue attività di elaborazione dei dati.
- Cluster: un cluster è il tuo motore di elaborazione dei dati personali, costituito da Google Cloud macchine virtuali. Crea un cluster per eseguire framework open source come Apache Spark e Apache Hadoop. Hai il controllo completo delle dimensioni, dei tipi di macchine e della configurazione del cluster.
- Job: un job è un'attività specifica, ad esempio uno script PySpark o una query Hadoop. Anziché eseguire un job direttamente su un cluster, lo invii al servizio Dataproc, che gestisce l'esecuzione del job per te. Puoi inviare più job al cluster.
- Modelli di workflow: un modello di workflow è una definizione riutilizzabile che orchestra una serie di job (un workflow). Può definire le dipendenze tra i job, ad esempio per eseguire un job di machine learning solo dopo il completamento di un job di pulizia dei dati. Il workflow basato su modelli può essere eseguito su un cluster esistente o su un cluster temporaneo (effimero) che viene creato per eseguire il workflow e poi eliminato al termine dell'operazione. Puoi utilizzare il modello per eseguire il flusso di lavoro definito ogni volta che è necessario.
- Policy di scalabilità automatica: una policy di scalabilità automatica contiene regole che definisci per aggiungere o rimuovere macchine worker da un cluster in base al carico di lavoro del cluster al fine di ottimizzare dinamicamente il costo e le prestazioni del cluster.
Il modello serverless
Serverless per Apache Spark è il modello Dataproc moderno e con esecuzione automatizzata. Ti consente di eseguire job senza eseguire il provisioning, la gestione o il ridimensionamento dell'infrastruttura sottostante: Serverless per Apache Spark gestisce i dettagli per te.
- Batch: un batch (chiamato anche carico di lavoro batch) è l'equivalente serverless di un job Dataproc. Invii il codice, ad esempio un job Spark, al servizio. Serverless per Apache Spark esegue il provisioning delle risorse necessarie su richiesta, esegue il job e poi le elimina. Non devi creare o gestire risorse di cluster o job. Il servizio fa tutto il lavoro per te.
- Sessioni interattive: le sessioni interattive forniscono un ambiente live e on demand per l'analisi esplorativa dei dati, in genere all'interno di un blocco note Jupyter. Le sessioni interattive offrono la comodità di uno spazio di lavoro serverless temporaneo che puoi utilizzare per eseguire query e sviluppare codice senza dover eseguire il provisioning e gestire le risorse di cluster e notebook.
- Modelli di sessione: un modello di sessione è una configurazione riutilizzabile che puoi utilizzare per definire le sessioni interattive. Il modello contiene le impostazioni della sessione, come le proprietà Spark e le dipendenze delle librerie. Utilizzi il modello per creare ambienti di sessione interattivi per lo sviluppo, in genere all'interno di un notebook Jupyter.
Servizi Metastore
Dataproc fornisce servizi gestiti per la gestione dei metadati, ovvero i dati sui tuoi dati.
- Metastore: un metastore funge da catalogo centrale per lo schema dei dati, ad esempio nomi di tabelle e colonne e tipi di dati. Un metastore consente a diversi servizi, cluster e job di comprendere la struttura dei tuoi dati. In genere, il catalogo è archiviato in Cloud Storage.
- Federazione: la federazione dei metadati è una funzionalità avanzata che ti consente di accedere ai dati e di eseguirne query da più metastore come se stessi accedendo a un unico metastore unificato.
Notebook e ambienti di sviluppo
I notebook e gli IDE Dataproc si collegano a ambienti di sviluppo integrati in cui puoi scrivere ed eseguire il codice.
- BigQuery Studio e Workbench: si tratta di ambienti unificati per l'analisi e i notebook. Ti consentono di scrivere codice (ad esempio in un notebook Jupyter) e di utilizzare un cluster Dataproc o una sessione serverless come potente motore di backend per eseguire il codice su set di dati di grandi dimensioni.
- Plug-in JupyterLab di Dataproc: questa estensione ufficiale di JupyterLab funge da pannello di controllo per Dataproc all'interno dell'ambiente del notebook. Semplifica il flusso di lavoro consentendoti di sfogliare, creare e gestire cluster e inviare job senza dover uscire dall'interfaccia Jupyter. Ulteriori informazioni
- Connettore Python Spark Connect per Dataproc: questa libreria Python semplifica l'utilizzo di Spark Connect con Dataproc. Gestisce l'autenticazione e la configurazione degli endpoint, semplificando notevolmente la connessione dell'ambiente Python locale, ad esempio un notebook o un IDE, a un cluster Dataproc remoto per lo sviluppo interattivo. Scopri di più
Personalizzazione dell'ambiente
Dataproc offre strumenti e componenti per personalizzare l'ambiente in base a esigenze specifiche. La sezione Utilità nella console Google Cloud contiene strumenti utili per personalizzare l'ambiente Dataproc.