Dela via


DataTransferStep Klass

Skapar ett Azure ML Pipeline-steg som överför data mellan lagringsalternativ.

DataTransferStep stöder vanliga lagringstyper som Azure Blob Storage och Azure Data Lake som källor och mottagare. Mer information finns i avsnittet Kommentarer .

Ett exempel på hur du använder DataTransferStep finns i notebook-filen https://aka.ms/pl-data-trans.

Skapa ett Azure ML Pipeline-steg som överför data mellan lagringsalternativ.

Arv
azureml.pipeline.core._data_transfer_step_base._DataTransferStepBase
DataTransferStep

Konstruktor

DataTransferStep(name, source_data_reference=None, destination_data_reference=None, compute_target=None, source_reference_type=None, destination_reference_type=None, allow_reuse=True)

Parametrar

Name Description
name
Obligatorisk
str

[Krävs] Namnet på steget.

source_data_reference

[Krävs] En indataanslutning som fungerar som källa för dataöverföringsåtgärden.

standardvärde: None
destination_data_reference

[Krävs] En utdataanslutning som fungerar som mål för dataöverföringsåtgärden.

standardvärde: None
compute_target

[Krävs] En Azure Data Factory som ska användas för överföring av data.

standardvärde: None
source_reference_type
str

En valfri sträng som anger typen av source_data_reference. Möjliga värden är: "file", "directory". När den inte anges används typen av befintlig sökväg. Använd den här parametern för att skilja mellan en fil och en katalog med samma namn.

standardvärde: None
destination_reference_type
str

En valfri sträng som anger typen av destination_data_reference. Möjliga värden är: "file", "directory". När det inte anges använder Azure ML typen av befintlig sökväg, källreferens eller "katalog" i den ordningen.

standardvärde: None
allow_reuse

Anger om steget ska återanvända tidigare resultat när det körs igen med samma inställningar. Återanvändning är aktiverat som standard. Om stegargumenten förblir oförändrade återanvänds utdata från föregående körning av det här steget. När du återanvänder steget, i stället för att överföra data igen, görs resultaten från föregående körning omedelbart tillgängliga för efterföljande steg. Om du använder Azure Machine Learning-datauppsättningar som indata bestäms återanvändning av om datauppsättningens definition har ändrats, inte av om underliggande data har ändrats.

standardvärde: True
name
Obligatorisk
str

[Krävs] Namnet på steget.

source_data_reference
Obligatorisk

[Krävs] En indataanslutning som fungerar som källa för dataöverföringsåtgärden.

destination_data_reference
Obligatorisk

[Krävs] En utdataanslutning som fungerar som mål för dataöverföringsåtgärden.

compute_target
Obligatorisk

[Krävs] En Azure Data Factory som ska användas för överföring av data.

source_reference_type
Obligatorisk
str

En valfri sträng som anger typen av source_data_reference. Möjliga värden är: "file", "directory". När den inte anges används typen av befintlig sökväg. Använd den här parametern för att skilja mellan en fil och en katalog med samma namn.

destination_reference_type
Obligatorisk
str

En valfri sträng som anger typen av destination_data_reference. Möjliga värden är: "file", "directory". När det inte anges använder Azure ML typen av befintlig sökväg, källreferens eller "katalog" i den ordningen.

allow_reuse
Obligatorisk

Anger om steget ska återanvända tidigare resultat när det körs igen med samma inställningar. Återanvändning är aktiverat som standard. Om stegargumenten förblir oförändrade återanvänds utdata från föregående körning av det här steget. När du återanvänder steget, i stället för att överföra data igen, görs resultaten från föregående körning omedelbart tillgängliga för efterföljande steg. Om du använder Azure Machine Learning-datauppsättningar som indata bestäms återanvändning av om datauppsättningens definition har ändrats, inte av om underliggande data har ändrats.

Kommentarer

Det här steget stöder följande lagringstyper som källor och mottagare, förutom där det anges:

  • Azure Blob Storage

  • Azure Data Lake Storage Gen1 och Gen2

  • Azure SQL Database

  • Azure Database for PostgreSQL

  • Azure Database for MySQL

För Azure SQL Database måste du använda autentisering med tjänstens huvudnamn. Mer information finns i Autentisering med tjänstens huvudnamn. Ett exempel på hur du använder autentisering av tjänstens huvudnamn för Azure SQL Database finns i https://aka.ms/pl-data-trans.

Om du vill upprätta ett databeroende mellan stegen använder get_output du metoden för att hämta ett PipelineData objekt som representerar utdata från det här dataöverföringssteget och som kan användas som indata för senare steg i pipelinen.


   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)

Om du vill skapa en med ett InputPortBinding specifikt namn kan du kombinera get_output() utdata med utdata från as_input metoderna PipelineDataeller as_mount för .


   data_transfer_step = DataTransferStep(name="copy data", ...)
   training_input = data_transfer_step.get_output().as_input("my_input_name")

Metoder

create_node

Skapa en nod från steget DataTransfer och lägg till den i den angivna grafen.

Den här metoden är inte avsedd att användas direkt. När en pipeline instansieras med det här steget skickar Azure ML automatiskt de parametrar som krävs via den här metoden så att steget kan läggas till i ett pipelinediagram som representerar arbetsflödet.

get_output

Hämta utdata från steget som PipelineData.

create_node

Skapa en nod från steget DataTransfer och lägg till den i den angivna grafen.

Den här metoden är inte avsedd att användas direkt. När en pipeline instansieras med det här steget skickar Azure ML automatiskt de parametrar som krävs via den här metoden så att steget kan läggas till i ett pipelinediagram som representerar arbetsflödet.

create_node(graph, default_datastore, context)

Parametrar

Name Description
graph
Obligatorisk

Grafobjektet som noden ska läggas till i.

default_datastore
Obligatorisk

Standarddatalager.

context
Obligatorisk
<xref:azureml.pipeline.core._GraphContext>

Grafkontexten.

Returer

Typ Description

Den skapade noden.

get_output

Hämta utdata från steget som PipelineData.

get_output()

Returer

Typ Description

Utdata från steget.

Kommentarer

Om du vill upprätta ett databeroende mellan stegen använder du get_output metoden för att hämta ett PipelineData objekt som representerar utdata från det här dataöverföringssteget och som kan användas som indata för senare steg i pipelinen.


   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)

Om du vill skapa ett med ett InputPortBinding specifikt namn kan du kombinera get_output() anrop med as_input eller as_mount hjälpmetoder.


   data_transfer_step = DataTransferStep(name="copy data", ...)

   training_input = data_transfer_step.get_output().as_input("my_input_name")