Panoramica del rendimento della pipeline

Questa pagina illustra la terminologia e i concetti di base dell'elaborazione delle pipeline in Cloud Data Fusion.

Le prestazioni della pipeline dipendono dai seguenti aspetti:

  • Le dimensioni e le caratteristiche dei dati
  • La struttura della pipeline
  • Dimensionamento del cluster
  • Plug-in utilizzati dalla pipeline Cloud Data Fusion

Terminologia dell'elaborazione della pipeline in Cloud Data Fusion

La seguente terminologia si applica all'elaborazione della pipeline in Cloud Data Fusion.

Tipo di macchina
Tipo di macchine virtuali (VM) utilizzate (CPU, memoria).
Cluster
Un gruppo di VM che lavorano insieme per gestire attività di elaborazione dati su larga scala.
Nodi master e worker
Macchine fisiche o virtuali che possono eseguire l'elaborazione. I nodi master di solito coordinare il lavoro. I nodi worker eseguono esecutori che elaborano i dati. Hanno delle caratteristiche delle macchine (quantità di memoria e numero di vCore disponibili processi).
vCore, core o CPU
Una risorsa che si occupa di computing. Di solito i nodi forniscono una certa quantità I core e i tuoi esecutori richiedono una o più CPU. Trova il giusto equilibrio con la memoria, altrimenti potresti sottoutilizzare il cluster.
Driver
Una singola VM che funge da coordinatore centrale per l'intero cluster. Gestisce le attività, pianifica il lavoro sui nodi worker e monitora l'avanzamento dei job.
Esecutori
Più VM che eseguono le effettive attività di elaborazione dei dati, come indicato dalle conducente. I tuoi dati sono partizionati e distribuiti tra questi esecutori nell'elaborazione parallela. Per utilizzare tutti gli esecutori, devi disporre di un numero sufficiente .
Suddivisioni o partizioni
Un set di dati viene suddiviso in suddivisioni (altre partizioni di nomi) per elaborare i dati in parallelo. Se non hai suddivisioni sufficienti, non puoi utilizzare l'intero cluster.

Panoramica dell'ottimizzazione delle prestazioni

Le pipeline vengono eseguite su cluster di macchine. Quando scegli di eseguire Pipeline di Cloud Data Fusion sui cluster Dataproc (ovvero provisioner consigliato), utilizza YARN (Yet Other Resource Negotiator) dietro su questi cluster. Dataproc utilizza YARN per la gestione delle risorse all'interno del cluster. Quando invii una pipeline Cloud Data Fusion a un cluster Dataproc, il job Apache Spark sottostante sfrutta YARN per l'allocazione delle risorse e la pianificazione delle attività.

Un cluster è costituito da nodi master e nodi worker. I nodi master sono generalmente responsabili del coordinamento del lavoro, mentre i nodi worker eseguono il lavoro effettivo. I cluster normalmente hanno un numero ridotto di nodi master (uno o tre) e un di un grande numero di worker. YARN viene utilizzato come sistema di coordinamento del lavoro. YARN esegue un servizio Resource Manager sul nodo master e un servizio Node Manager su ogni nodo worker. I gestori delle risorse si coordinano tra tutti i gestori dei nodi per determinare dove creare ed eseguire container sul cluster.

Gestori risorse e gestori nodi YARN

Su ogni nodo worker, Node Manager riserva una parte della memoria e delle CPU della macchina disponibili per l'esecuzione dei container YARN. Ad esempio, in una Cluster Dataproc, se i nodi worker sono VM n1-standard-4 (4 CPU, 15 GB di memoria), ogni Node Manager riserva 4 CPU e 12 GB di memoria per l'esecuzione di container YARN. I 3 GB di memoria rimanenti viene lasciato agli altri servizi Hadoop in esecuzione sul nodo.

Quando una pipeline viene eseguita su YARN, avvia un driver del flusso di lavoro della pipeline, driver Spark e molti esecutori Spark in Dataproc.

Driver ed esecutori

Il driver del flusso di lavoro è responsabile dell'avvio di uno o più programmi Spark che compongono una pipeline. Il driver del flusso di lavoro di solito non lavora molto. Ciascuna Il programma Spark esegue un singolo driver Spark e più esecutori Spark. Il driver coordina il lavoro tra gli esecutori, ma di solito non svolge alcun lavoro effettivo. La maggior parte del lavoro effettivo viene eseguita dagli esecutori Spark.

Passaggi successivi