Les composants de Dataflow vous permettent d'envoyer des jobs Apache Beam à Dataflow pour exécution. Dans Dataflow, une
Job
ressource représente un job Dataflow.
Le Google Cloud SDK contient les
opérateurs suivants permettant de créer des ressources Job et surveiller leur exécution :
De plus, le Google Cloud SDK inclut le
WaitGcpResourcesOp
composant, que vous pouvez utiliser pour limiter les coûts lors de l'exécution de
jobs Dataflow.
DataflowFlexTemplateJobOp
L'DataflowFlexTemplateJobOp
opérateur vous permet de créer un
composant Gemini Enterprise Agent Platform Pipelines pour lancer un
modèle Flex Dataflow.
Dans Dataflow, une LaunchFlexTemplateParameter
ressource représente un modèle Flex à lancer. Ce composant crée une ressource LaunchFlexTemplateParameter, puis demande à Dataflow de créer un job en lançant le modèle. Si le lancement du modèle aboutit, Dataflow renvoie une ressource Job.
Le composant modèle Flex Dataflow s'arrête lorsqu'il reçoit une ressource Job de Dataflow. Le composant génère un job_id en tant que proto gcp_resources sérialisé. Vous
pouvez transmettre ce paramètre à un WaitGcpResourcesOp
composant pour attendre la fin du job Dataflow.
DataflowPythonJobOp
L'opérateur DataflowPythonJobOp
vous permet de créer un composant Gemini Enterprise Agent Platform Pipelines qui prépare
les données en envoyant un job Apache Beam basé sur Python à Dataflow pour
exécution.
Le code Python de la tâche Apache Beam s'exécute avec Dataflow Runner.
Lorsque vous exécutez votre pipeline avec le service Dataflow, l'exécuteur
importe votre code exécutable à l'emplacement spécifié par le python_module_path paramètre
et les dépendances dans un bucket Cloud Storage (spécifié par temp_location), puis crée un
job Dataflow qui exécute votre pipeline Apache Beam sur des ressources gérées dans Google Cloud.
Pour en savoir plus sur l'exécuteur Dataflow, consultez la section Utiliser l'exécuteur Dataflow.
Le composant Python de Dataflow accepte une liste d'arguments transmis à l'aide de l'exécuteur Beam à votre code Apache Beam. Ces arguments sont spécifiés par args. Par exemple, vous pouvez utiliser ces arguments pour définir le paramètre apache_beam.options.pipeline_options de façon à spécifier un réseau, un sous-réseau, une clé de chiffrement gérée par le client (CMEK) et d'autres options lorsque vous exécutez des tâches Dataflow.
WaitGcpResourcesOp
Les tâches Dataflow peuvent souvent prendre beaucoup de temps. Les coûts d'un conteneur busy-wait (le conteneur qui lance la tâche Dataflow et attend le résultat) peuvent s'avérer coûteux.
Après avoir envoyé le job Dataflow à l'aide de l'exécuteur Beam, le composant DataflowPythonJobOp s'arrête immédiatement et renvoie un paramètre de sortie job_id en tant que proto gcp_resources sérialisé. Vous pouvez transmettre ce paramètre à un composant WaitGcpResourcesOp pour attendre la fin du job Dataflow.
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"] )
Gemini Enterprise Agent Platform Pipelines optimise WaitGcpResourcesOp pour l'exécuter en mode sans serveur et sans entraîner aucun coût.
Si DataflowPythonJobOp et DataflowFlexTemplateJobOp ne répondent pas à vos exigences, vous pouvez également créer votre propre composant qui génère le paramètre gcp_resources et le transmet au composant WaitGcpResourcesOp.
Pour en savoir plus sur la création d'un paramètre de sortie gcp_resources, consultez
Écrire un composant pour afficher un lien vers la Google Cloud console.
Documentation de référence de l'API
Pour en savoir plus sur les composants, consultez la Google Cloud documentation de référence du SDK pour les composants Dataflow.
Pour en savoir plus sur les ressources Dataflow, consultez les pages de documentation de référence de l'API suivantes :
Ressource
LaunchFlexTemplateParameterRessource
Job
Tutoriels
- Premiers pas avec le composant modèle Flex Dataflow
- Premiers pas avec le composant du job Python Dataflow
- Spécifier un réseau et un sous-réseau
- Utiliser des clés de chiffrement gérées par le client (CMEK)
Historique des versions et notes de version
Pour en savoir plus sur l'historique des versions et les modifications apportées au Google Cloud SDK des composants du pipeline, consultez les Google Cloud notes de version du SDK des composants du pipeline.
Contacts pour l'assistance technique
Si vous avez des questions, veuillez nous contacter à l'adresse kubeflow-pipelines-components@google.com.