Delen via


DataTransferStep Klas

Hiermee maakt u een Azure ML-pijplijnstap waarmee gegevens worden overgedragen tussen opslagopties.

DataTransferStep ondersteunt algemene opslagtypen, zoals Azure Blob Storage en Azure Data Lake als bronnen en sinks. Zie de sectie Opmerkingen voor meer informatie.

Zie het notebook https://aka.ms/pl-data-transvoor een voorbeeld van het gebruik van DataTransferStep.

Maak een Azure ML-pijplijnstap waarmee gegevens worden overgedragen tussen opslagopties.

Overname
azureml.pipeline.core._data_transfer_step_base._DataTransferStepBase
DataTransferStep

Constructor

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

Parameters

Name Description
name
Vereist
str

[Vereist] De naam van de stap.

source_data_reference

[Vereist] Een invoerverbinding die fungeert als bron van de gegevensoverdrachtbewerking.

Default value: None
destination_data_reference

[Vereist] Een uitvoerverbinding die fungeert als doel van de gegevensoverdrachtbewerking.

Default value: None
compute_target

[Vereist] Een Azure Data Factory voor het overdragen van gegevens.

Default value: None
source_reference_type
str

Een optionele tekenreeks die het type aangeeft source_data_reference. Mogelijke waarden zijn: 'bestand', 'map'. Wanneer dit niet is opgegeven, wordt het type bestaand pad gebruikt. Gebruik deze parameter om onderscheid te maken tussen een bestand en map met dezelfde naam.

Default value: None
destination_reference_type
str

Een optionele tekenreeks die het type aangeeft destination_data_reference. Mogelijke waarden zijn: 'bestand', 'map'. Als dit niet is opgegeven, gebruikt Azure ML het type bestaand pad, de bronreferentie of de map in die volgorde.

Default value: None
allow_reuse

Hiermee wordt aangegeven of de stap eerdere resultaten opnieuw moet gebruiken wanneer deze opnieuw wordt uitgevoerd met dezelfde instellingen. Hergebruik is standaard ingeschakeld. Als stapargumenten ongewijzigd blijven, wordt de uitvoer van de vorige uitvoering van deze stap opnieuw gebruikt. Wanneer u de stap opnieuw gebruikt, in plaats van gegevens opnieuw over te dragen, worden de resultaten van de vorige uitvoering onmiddellijk beschikbaar gemaakt voor eventuele volgende stappen. Als u Azure Machine Learning-gegevenssets als invoer gebruikt, wordt hergebruik bepaald door of de definitie van de gegevensset is gewijzigd, niet door of de onderliggende gegevens zijn gewijzigd.

Default value: True
name
Vereist
str

[Vereist] De naam van de stap.

source_data_reference
Vereist

[Vereist] Een invoerverbinding die fungeert als bron van de gegevensoverdrachtbewerking.

destination_data_reference
Vereist

[Vereist] Een uitvoerverbinding die fungeert als doel van de gegevensoverdrachtbewerking.

compute_target
Vereist

[Vereist] Een Azure Data Factory voor het overdragen van gegevens.

source_reference_type
Vereist
str

Een optionele tekenreeks die het type aangeeft source_data_reference. Mogelijke waarden zijn: 'bestand', 'map'. Wanneer dit niet is opgegeven, wordt het type bestaand pad gebruikt. Gebruik deze parameter om onderscheid te maken tussen een bestand en map met dezelfde naam.

destination_reference_type
Vereist
str

Een optionele tekenreeks die het type aangeeft destination_data_reference. Mogelijke waarden zijn: 'bestand', 'map'. Als dit niet is opgegeven, gebruikt Azure ML het type bestaand pad, de bronreferentie of de map in die volgorde.

allow_reuse
Vereist

Hiermee wordt aangegeven of de stap eerdere resultaten opnieuw moet gebruiken wanneer deze opnieuw wordt uitgevoerd met dezelfde instellingen. Hergebruik is standaard ingeschakeld. Als stapargumenten ongewijzigd blijven, wordt de uitvoer van de vorige uitvoering van deze stap opnieuw gebruikt. Wanneer u de stap opnieuw gebruikt, in plaats van gegevens opnieuw over te dragen, worden de resultaten van de vorige uitvoering onmiddellijk beschikbaar gemaakt voor eventuele volgende stappen. Als u Azure Machine Learning-gegevenssets als invoer gebruikt, wordt hergebruik bepaald door of de definitie van de gegevensset is gewijzigd, niet door of de onderliggende gegevens zijn gewijzigd.

Opmerkingen

Deze stap ondersteunt de volgende opslagtypen als bronnen en sinks, behalve waar aangegeven:

  • Azure Blob Storage

  • Azure Data Lake Storage Gen1 en Gen2

  • Azure SQL Database

  • Azure Database for PostgreSQL

  • Azure Database for MySQL

Voor Azure SQL Database moet u service-principalverificatie gebruiken. Zie Verificatie van service-principals voor meer informatie. Zie voor een voorbeeld van het gebruik van service-principalverificatie voor Azure SQL Databasehttps://aka.ms/pl-data-trans.

Als u gegevensafhankelijkheid tussen stappen wilt instellen, gebruikt u de get_output methode om een PipelineData object op te halen dat de uitvoer van deze stap voor gegevensoverdracht vertegenwoordigt en kan worden gebruikt als invoer voor latere stappen in de pijplijn.


   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)

Als u een met een InputPortBinding specifieke naam wilt maken, kunt u de uitvoer van get_output() combineren met de uitvoer van de as_input methoden of as_mount van PipelineData.


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

Methoden

create_node

Maak een knooppunt uit de stap DataTransfer en voeg dit toe aan de opgegeven grafiek.

Deze methode is niet bedoeld om rechtstreeks te worden gebruikt. Wanneer een pijplijn wordt geïnstantieerd met deze stap, geeft Azure ML automatisch de vereiste parameters door via deze methode, zodat deze stap kan worden toegevoegd aan een pijplijngrafiek die de werkstroom vertegenwoordigt.

get_output

Haal de uitvoer van de stap op als PipelineData.

create_node

Maak een knooppunt uit de stap DataTransfer en voeg dit toe aan de opgegeven grafiek.

Deze methode is niet bedoeld om rechtstreeks te worden gebruikt. Wanneer een pijplijn wordt geïnstantieerd met deze stap, geeft Azure ML automatisch de vereiste parameters door via deze methode, zodat deze stap kan worden toegevoegd aan een pijplijngrafiek die de werkstroom vertegenwoordigt.

create_node(graph, default_datastore, context)

Parameters

Name Description
graph
Vereist

Het grafiekobject waaraan u het knooppunt wilt toevoegen.

default_datastore
Vereist

Het standaardgegevensarchief.

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

De grafiekcontext.

Retouren

Type Description

Het gemaakte knooppunt.

get_output

Haal de uitvoer van de stap op als PipelineData.

get_output()

Retouren

Type Description

De uitvoer van de stap.

Opmerkingen

Als u gegevensafhankelijkheid tussen stappen wilt instellen, gebruikt u get_output de methode om een PipelineData object op te halen dat de uitvoer van deze stap voor gegevensoverdracht vertegenwoordigt en kan worden gebruikt als invoer voor latere stappen in de pijplijn.


   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)

Als u een met een InputPortBinding specifieke naam wilt maken, kunt u get_output() aanroep combineren met as_input of as_mount helpermethoden.


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

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