DataTransferStep Classe
Crée une étape de pipeline Azure ML qui transfère des données entre les options de stockage.
DataTransferStep prend en charge les types de stockage courants comme Stockage Blob Azure et Azure Data Lake Storage en tant que sources et récepteurs. Pour plus d’informations, consultez la section Remarques.
Pour obtenir un exemple d’utilisation de DataTransferStep, consultez le notebook https://aka.ms/pl-data-trans.
Créez une étape De pipeline Azure ML qui transfère des données entre les options de stockage.
- Héritage
-
azureml.pipeline.core._data_transfer_step_base._DataTransferStepBaseDataTransferStep
Constructeur
DataTransferStep(name, source_data_reference=None, destination_data_reference=None, compute_target=None, source_reference_type=None, destination_reference_type=None, allow_reuse=True)
Paramètres
- source_data_reference
- Union[InputPortBinding, DataReference, PortDataReference, PipelineData]
[Obligatoire] Connexion d’entrée qui sert de source à l’opération de transfert de données.
- destination_data_reference
- Union[InputPortBinding, PipelineOutputAbstractDataset, DataReference]
[Obligatoire] Connexion de sortie qui sert de destination à l’opération de transfert de données.
- compute_target
- DataFactoryCompute, str
[Obligatoire] Service Azure Data Factory à utiliser pour le transfert de données.
- source_reference_type
- str
Chaîne facultative spécifiant le type de source_data_reference
. Les valeurs possibles sont les suivantes : « file », « directory ». Lorsqu’il n’est pas spécifié, le type de chemin existant est utilisé.
Utilisez ce paramètre pour faire la distinction entre un fichier et un répertoire du même nom.
- destination_reference_type
- str
Chaîne facultative spécifiant le type de destination_data_reference
.
Les valeurs possibles sont les suivantes : « file », « directory ». Lorsqu’il n’est pas spécifié, Azure ML utilise le type de chemin existant, la référence source ou le répertoire, dans cet ordre.
- allow_reuse
- bool
Indique si l’étape doit réutiliser les résultats précédents lorsqu’elle est exécutée avec les mêmes paramètres. La réutilisation est activée par défaut. Si les arguments d’étape restent inchangés, la sortie de l’exécution précédente de cette étape est réutilisée. Lors de la réutilisation de l’étape, au lieu de retransférer des données, les résultats de l’exécution précédente sont immédiatement mis à la disposition des étapes suivantes. Si vous utilisez des jeux de données Azure Machine Learning comme entrées, la réutilisation est déterminée par le fait que la définition du jeu de données a changé ou pas, non par la modification éventuelle des données sous-jacentes.
- source_data_reference
- Union[InputPortBinding, DataReference, PortDataReference, PipelineData]
[Obligatoire] Connexion d’entrée qui sert de source à l’opération de transfert de données.
- destination_data_reference
- Union[InputPortBinding, PipelineOutputAbstractDataset, DataReference]
[Obligatoire] Connexion de sortie qui sert de destination à l’opération de transfert de données.
- compute_target
- DataFactoryCompute, str
[Obligatoire] Service Azure Data Factory à utiliser pour le transfert de données.
- source_reference_type
- str
Chaîne facultative spécifiant le type de source_data_reference
. Les valeurs possibles sont les suivantes : « file », « directory ». Lorsqu’il n’est pas spécifié, le type de chemin existant est utilisé.
Utilisez ce paramètre pour faire la distinction entre un fichier et un répertoire du même nom.
- destination_reference_type
- str
Chaîne facultative spécifiant le type de destination_data_reference
.
Les valeurs possibles sont les suivantes : « file », « directory ». Lorsqu’il n’est pas spécifié, Azure ML utilise le type de chemin existant, la référence source ou le répertoire, dans cet ordre.
- allow_reuse
- bool
Indique si l’étape doit réutiliser les résultats précédents lorsqu’elle est exécutée avec les mêmes paramètres. La réutilisation est activée par défaut. Si les arguments d’étape restent inchangés, la sortie de l’exécution précédente de cette étape est réutilisée. Lors de la réutilisation de l’étape, au lieu de retransférer des données, les résultats de l’exécution précédente sont immédiatement mis à la disposition des étapes suivantes. Si vous utilisez des jeux de données Azure Machine Learning comme entrées, la réutilisation est déterminée par le fait que la définition du jeu de données a changé ou pas, non par la modification éventuelle des données sous-jacentes.
Remarques
Sauf indication contraire, cette étape prend en charge les types de stockage suivants en tant que sources et récepteurs :
Stockage Blob Azure
Azure Data Lake Storage Gen1 et Gen2
Azure SQL Database
Azure Database pour PostgreSQL
Azure Database pour MySQL
Pour Azure SQL Database, vous devez utiliser l’authentification du principal de service. Pour plus d’informations, consultez Authentification du principal de service. Pour obtenir un exemple d’authentification du principal de service pour Azure SQL Database, consultez https://aka.ms/pl-data-trans.
Pour établir la dépendance des données entre les étapes, utilisez la méthode get_output afin d’obtenir un objet PipelineData qui représente la sortie de cette étape de transfert de données et peut servir d’entrée pour les étapes ultérieures dans le pipeline.
data_transfer_step = DataTransferStep(name="copy data", ...)
# Use output of data_transfer_step as input of another step in pipeline
# This will make training_step wait for data_transfer_step to complete
training_input = data_transfer_step.get_output()
training_step = PythonScriptStep(script_name="train.py",
arguments=["--model", training_input],
inputs=[training_input],
compute_target=aml_compute,
source_directory=source_directory)
Pour créer un InputPortBinding portant un nom spécifique, vous pouvez combiner la sortie get_output() avec la sortie des méthodes as_input ou as_mount de PipelineData.
data_transfer_step = DataTransferStep(name="copy data", ...)
training_input = data_transfer_step.get_output().as_input("my_input_name")
Méthodes
create_node |
Crée un nœud à partir de l’étape DataTransfer et l’ajoute au graphique donné. Cette méthode n’est pas destinée à être utilisée directement. Lorsqu’un pipeline est instancié avec cette étape, Azure ML transmet automatiquement les paramètres requis via cette méthode afin que l’étape puisse être ajoutée à un graphique de pipeline qui représente le flux de travail. |
get_output |
Obtient la sortie de l’étape sous forme d’objet PipelineData. |
create_node
Crée un nœud à partir de l’étape DataTransfer et l’ajoute au graphique donné.
Cette méthode n’est pas destinée à être utilisée directement. Lorsqu’un pipeline est instancié avec cette étape, Azure ML transmet automatiquement les paramètres requis via cette méthode afin que l’étape puisse être ajoutée à un graphique de pipeline qui représente le flux de travail.
create_node(graph, default_datastore, context)
Paramètres
- default_datastore
- Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Magasin de données par défaut.
- context
- <xref:azureml.pipeline.core._GraphContext>
Contexte du graphique.
Retours
Nœud créé.
Type de retour
get_output
Obtient la sortie de l’étape sous forme d’objet PipelineData.
get_output()
Retours
Sortie de l’étape.
Type de retour
Remarques
Pour établir la dépendance des données entre les étapes, utilisez la méthode get_output afin d’obtenir un objet PipelineData qui représente la sortie de cette étape de transfert de données et peut être utilisé comme entrée pour les étapes ultérieures dans le pipeline.
data_transfer_step = DataTransferStep(name="copy data", ...)
# Use output of data_transfer_step as input of another step in pipeline
# This will make training_step wait for data_transfer_step to complete
training_input = data_transfer_step.get_output()
training_step = PythonScriptStep(script_name="train.py",
arguments=["--model", training_input],
inputs=[training_input],
compute_target=aml_compute,
source_directory=source_directory)
Pour créer un objet InputPortBinding portant un nom spécifique, vous pouvez combiner l’appel get_output() avec des méthodes d’assistance as_input ou as_mount.
data_transfer_step = DataTransferStep(name="copy data", ...)
training_input = data_transfer_step.get_output().as_input("my_input_name")
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour