I componenti Dataflow ti consentono di inviare job Apache Beam
Dataflow per l'esecuzione. In Dataflow,
Job
rappresenta un job Dataflow.
L'SDK dei componenti della pipeline di Google Cloud include il
i seguenti operatori per creare risorse Job
e monitorarne l'esecuzione:
Inoltre, l'SDK dei componenti della pipeline di Google Cloud include
WaitGcpResourcesOp
per mitigare i costi durante l'esecuzione
di job Dataflow.
DataflowFlexTemplateJobOp
La DataflowFlexTemplateJobOp
consente di creare un'istanza
Componente Vertex AI Pipelines per avviare
Modello flessibile Dataflow.
In Dataflow, una LaunchFlexTemplateParameter
rappresenta un modello flessibile da lanciare. Questo componente crea un'istanza
LaunchFlexTemplateParameter
risorsa e poi richiede a Dataflow
avviando il modello per creare un job. Se il modello viene avviato
correttamente, Dataflow restituisce un valore Job
risorsa.
Il componente Modello flessibile Dataflow termina quando riceve un messaggio Job
risorsa di Dataflow. Il componente restituisce un job_id
come
proto gcp_resources
serializzato. Tu
può passare questo parametro a un WaitGcpResourcesOp
per attendere il completamento del job Dataflow.
DataflowPythonJobOp
La DataflowPythonJobOp
consente di creare un componente Vertex AI Pipelines che prepara
inviando un job Apache Beam basato su Python a Dataflow per
dell'esecuzione.
Il codice Python del job Apache Beam viene eseguito con Dataflow Runner.
Quando esegui la pipeline con il servizio Dataflow, il runner
carica il codice eseguibile nella posizione specificata dal parametro python_module_path
e dipendenze a un bucket Cloud Storage (specificato da temp_location
), quindi crea un'istanza
Job Dataflow che esegue la pipeline Apache Beam su risorse gestite in Google Cloud.
Per saperne di più su Dataflow Runner, consulta Utilizzo di Dataflow Runner.
Il componente Python di Dataflow accetta un elenco di argomenti
passati tramite Beam Runner in Apache Beam
le API nel tuo codice. Questi argomenti sono specificati da args
. Ad esempio, puoi utilizzare questi
per impostare
Da apache_beam.options.pipeline_options
a
specificare una rete, una subnet, una chiave di crittografia gestita dal cliente (CMEK) e
e altre opzioni quando esegui i job Dataflow.
WaitGcpResourcesOp
Il completamento dei job Dataflow può spesso richiedere molto tempo. I costi di
un container busy-wait
(il container che avvia il job Dataflow
attendere il risultato) può diventare costoso.
Dopo aver inviato il job Dataflow utilizzando il runner Beam,
DataflowPythonJobOp
termina immediatamente e restituisce un parametro di output job_id
come componente
protocollo gcp_resources
serializzato. Tu
può passare questo parametro a un componente WaitGcpResourcesOp
, in attesa che venga restituito
Job Dataflow da completare.
dataflow_python_op = DataflowPythonJobOp( project=project_id, location=location, python_module_path=python_file_path, temp_location = staging_dir, requirements_file_path = requirements_file_path, args = ['--output', OUTPUT_FILE], ) dataflow_wait_op = WaitGcpResourcesOp( gcp_resources = dataflow_python_op.outputs["gcp_resources"] )
Vertex AI Pipelines ottimizza WaitGcpResourcesOp
per eseguirlo in una
serverless, con costi pari a zero.
Se DataflowPythonJobOp
e DataflowFlexTemplateJobOp
non soddisfano i tuoi
requisiti, puoi anche creare un tuo componente che generi il
gcp_resources
e passarlo al componente WaitGcpResourcesOp
.
Per saperne di più su come creare il parametro di output gcp_resources
, consulta
Scrivi un componente per visualizzare il link di una console Google Cloud.
Riferimento API
Per informazioni sui componenti, consulta Riferimento dell'SDK dei componenti della pipeline di Google Cloud per i componenti di Dataflow.
Per riferimenti alle risorse Dataflow, consulta le seguenti pagine di riferimento dell'API:
LaunchFlexTemplateParameter
risorsaJob
risorsa
Tutorial
- Inizia a utilizzare il componente del modello flessibile di Dataflow
- Inizia a utilizzare il componente Job Python di Dataflow
- Specificare una rete e una subnet
- Utilizzo delle chiavi di crittografia gestite dal cliente (CMEK)
Cronologia delle versioni e note di rilascio
Per saperne di più sulla cronologia delle versioni e sulle modifiche all'SDK dei componenti della pipeline di Google Cloud, consulta le note di rilascio dell'SDK per i componenti della pipeline di Google Cloud.
Contatti dell'assistenza tecnica
In caso di domande, contatta kubeflow-pipelines-components@google.com.