Panoramica dei modelli di workflow di Managed Service per Apache Spark

L'API WorkflowTemplates di Managed Service for Apache Spark offre un meccanismo flessibile e facile da usare per la gestione e l'esecuzione dei flussi di lavoro. Un modello di flusso di lavoro è una configurazione di flusso di lavoro riutilizzabile. Definisce un grafico di job con informazioni sul punto di esecuzione di questi job.

Punti chiave:

Tipi di modelli di workflow

Cluster gestito

Un modello di flusso di lavoro può specificare un cluster gestito. Il workflow creerà un cluster "temporaneo" per eseguire i job del workflow, per poi eliminarlo al termine del workflow.

Selettore di cluster

Un modello di flusso di lavoro può specificare un cluster esistente su cui eseguire i job del flusso di lavoro specificando una o più etichette utente precedentemente associate al cluster. Il flusso di lavoro verrà eseguito su un cluster che corrisponde a tutte le etichette. Se più cluster corrispondono a tutte le etichette, Managed Service for Apache Spark seleziona il cluster con la massima quantità di memoria YARN disponibile per eseguire tutti i job del workflow. Al termine del flusso di lavoro, Managed Service per Apache Spark non elimina il cluster selezionato. Per saperne di più, consulta la sezione Utilizzare i selettori di cluster con i flussi di lavoro.

Parametrizzato

Se esegui un modello di flusso di lavoro più volte con valori diversi, utilizza i parametri per evitare di modificare il modello di flusso di lavoro per ogni esecuzione:

  1. definisci i parametri nel modello, poi

  2. passare valori diversi per i parametri per ogni esecuzione.

Per saperne di più, consulta la sezione Parametrizzazione dei modelli di workflow.

In linea

Workflows possono essere istanziati inline utilizzando il comando gcloud con i file YAML del modello di workflow o chiamando l'API Managed Service for Apache Spark InstantiateInline (vedi Utilizzo dei workflow Dataproc inline). I workflow incorporati non creano né modificano le risorse dei modelli di workflow.

Casi d'uso del modello di workflow

  • Automazione delle attività ripetitive. Workflows contengono configurazioni e job del cluster utilizzati di frequente.

  • Modello di interazione API transazionale fire-and-forget. I modelli di workflow sostituiscono i passaggi coinvolti in un flusso tipico, che include:

    1. creazione del cluster
    2. invio di job
    3. polling
    4. eliminazione del cluster

    I modelli di flusso di lavoro utilizzano un singolo token per monitorare l'avanzamento dalla creazione all'eliminazione del cluster e automatizzare la gestione e il ripristino degli errori. Semplificano inoltre l'integrazione di Managed Service per Apache Spark con altri strumenti, come Cloud Run Functions e Cloud Composer.

  • Supporto per cluster effimeri e di lunga durata. Una difficoltà comune associata all'esecuzione di Apache Hadoop è la messa a punto e il dimensionamento corretto dei cluster. I cluster effimeri (gestiti) sono più facili da configurare perché eseguono un singolo workload. I selettori di cluster possono essere utilizzati con cluster di lunga durata per eseguire ripetutamente lo stesso workload senza sostenere il costo ammortizzato della creazione ed eliminazione dei cluster.

  • Sicurezza IAM granulare. La creazione di cluster Managed Service per Apache Spark e l'invio di job richiedono autorizzazioni IAM tutto o niente. I modelli di workflow utilizzano un'autorizzazione workflowTemplates.instantiate per modello e non dipendono dalle autorizzazioni di cluster o job.