Panoramica dei modelli di flusso di lavoro Dataproc
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
L'API WorkflowTemplates di Dataproc 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.
Se il workflow
utilizza un cluster gestito, crea il cluster, esegue i job
e poi lo elimina al termine dei job.
Se il flusso di lavoro utilizza un
selettore di cluster, esegue i job su un cluster esistente selezionato.
Workflows sono ideali per i flussi di job complessi. Puoi creare dipendenze tra i job
in modo che un job inizi solo dopo che le relative dipendenze sono state completate correttamente.
Quando crei un modello di workflow, Dataproc
non crea un cluster né invia job a un cluster.
Dataproc crea o seleziona un cluster ed esegue i job del workflow sul cluster quando viene creata un'istanza di un modello di workflow.
Tipi di modelli di workflow
Cluster gestito
Un modello di workflow 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, Dataproc seleziona il cluster con la massima quantità di memoria YARN disponibile per eseguire tutti i job del workflow. Al termine del flusso di lavoro,
Dataproc 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:
definisci i parametri nel modello, poi
passare valori diversi per i parametri per ogni esecuzione.
Automazione di 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:
creazione del cluster
invio di job
polling
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 recupero degli errori. Semplificano anche l'integrazione di Dataproc con altri strumenti, come le funzioni Cloud Run 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 Dataproc 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.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-09-04 UTC."],[[["\u003cp\u003eWorkflow Templates offer a reusable configuration for defining a series of jobs in a Directed Acyclic Graph (DAG), streamlining the management and execution of workflows.\u003c/p\u003e\n"],["\u003cp\u003eInstantiating a Workflow Template initiates a Workflow, which either creates an ephemeral cluster, runs the jobs, and then deletes the cluster, or utilizes a pre-existing cluster selected via labels.\u003c/p\u003e\n"],["\u003cp\u003eWorkflows are ideal for complex job sequences, allowing you to set job dependencies so that one job will only execute once the previous one has been completed successfully.\u003c/p\u003e\n"],["\u003cp\u003eWorkflow Templates can be parameterized to execute with varying values without the need to edit the template for each run, enhancing flexibility.\u003c/p\u003e\n"],["\u003cp\u003eWorkflow Templates simplify task automation and the integration of Dataproc with external tools by replacing manual cluster management steps with a single-token tracking process.\u003c/p\u003e\n"]]],[],null,["The Dataproc [WorkflowTemplates API](/dataproc/docs/reference/rest/v1/projects.regions.workflowTemplates) provides a\nflexible and easy-to-use mechanism for managing and executing workflows. A\nWorkflow Template is a reusable workflow configuration. It defines a graph of\njobs with information on where to run those jobs.\n\n**Key Points:**\n\n- [Instantiating a Workflow Template](/dataproc/docs/concepts/workflows/using-workflows#running_a_workflow) launches a Workflow. A Workflow is an operation that runs a [Directed Acyclic Graph (DAG)](https://en.wikipedia.org/wiki/Directed_acyclic_graph) of jobs on a cluster.\n - If the workflow uses a [managed cluster](#managed_cluster), it creates the cluster, runs the jobs, and then deletes the cluster when the jobs are finished.\n - If the workflow uses a [cluster selector](#cluster_selector), it runs jobs on a selected existing cluster.\n- Workflows are ideal for complex job flows. You can create job dependencies so that a job starts only after its dependencies complete successfully.\n- When you [create a workflow template](/dataproc/docs/concepts/workflows/using-workflows#creating_a_template) Dataproc does not create a cluster or submit jobs to a cluster. Dataproc creates or selects a cluster and runs workflow jobs on the cluster when a workflow template is **instantiated**.\n\nKinds of Workflow Templates\n\nManaged cluster\n\nA workflow template can specify a managed cluster. The workflow will create an\n\"ephemeral\" cluster to run workflow jobs, and then delete the cluster when the\nworkflow is finished.\n\nCluster selector\n\nA workflow template can specify an existing cluster on which to run workflow\njobs by specifying one or more [user labels](/dataproc/docs/concepts/labels)\npreviously attached to the cluster. The workflow will run on a\ncluster that matches all of the labels. If multiple clusters match\nall labels, Dataproc selects the cluster with the most\nYARN available memory to run all workflow jobs. At the end of workflow,\nDataproc does not delete the selected cluster. See\n[Use cluster selectors with workflows](/dataproc/docs/concepts/workflows/cluster-selectors)\nfor more information.\n| A workflow can select a specific cluster by matching the `goog-dataproc-cluster-name` label (see [Using Automatically Applied Labels](/dataproc/docs/concepts/workflows/cluster-selectors#using_automatically_applied_labels)).\n\nParameterized\n\nIf you will run a workflow template multiple times with different values, use\nparameters to avoid editing the workflow template for each run:\n\n1. define parameters in the template, then\n\n2. pass different values for the parameters for each run.\n\nSee\n[Parameterization of Workflow Templates](/dataproc/docs/concepts/workflows/workflow-parameters)\nfor more information.\n\nInline\n\nWorkflows can be instantiated inline using the `gcloud` command with\n[workflow template YAML files](/dataproc/docs/concepts/workflows/using-yamls#instantiate_a_workflow_using_a_yaml_file) or by calling the Dataproc\n[InstantiateInline](/dataproc/docs/reference/rest/v1/projects.regions.workflowTemplates/instantiateInline)\nAPI (see [Using inline Dataproc workflows](/dataproc/docs/concepts/workflows/inline-workflows)).\nInline workflows do not create or modify workflow template resources.\n| Inline workflows can be useful for rapid prototyping or automation.\n\nWorkflow Template use cases\n\n- **Automation of repetitive tasks.** Workflows encapsulate frequently used\n cluster configurations and jobs.\n\n- **Transactional fire-and-forget API interaction model.** Workflow Templates\n replace the steps involved in a typical flow, which include:\n\n 1. creating the cluster\n 2. submitting jobs\n 3. polling\n 4. deleting the cluster\n\n Workflow Templates use a single token to track progress from cluster creation\n to deletion, and automate error handling and recovery. They also simplify the\n integration of Dataproc with other tools, such as Cloud Run functions\n and Cloud Composer.\n- **Support for ephemeral and long-lived clusters.** A common complexity\n associated with running Apache Hadoop is tuning and right-sizing clusters.\n Ephemeral (managed) clusters are easier to configure since they run a\n single workload. Cluster selectors can be used with\n longer-lived clusters to repeatedly execute the same workload\n without incurring the amortized cost of creating and deleting clusters.\n\n- **Granular IAM security.** Creating Dataproc clusters and\n submitting jobs require all-or-nothing IAM permissions.\n Workflow Templates use a per-template\n [workflowTemplates.instantiate](/dataproc/docs/concepts/iam/iam#workflow_templates_methods_required_permissions)\n permission, and do not depend on cluster or job permissions."]]