Udostępnij za pośrednictwem


DataTransferStep Klasa

Tworzy krok potoku usługi Azure ML, który przesyła dane między opcjami magazynu.

DataTransferStep obsługuje typowe typy magazynów, takie jak Azure Blob Storage i Azure Data Lake jako źródła i ujścia. Aby uzyskać więcej informacji, zobacz sekcję Uwagi .

Przykład użycia elementu DataTransferStep można znaleźć w notesie https://aka.ms/pl-data-trans.

Utwórz krok potoku usługi Azure ML, który przesyła dane między opcjami magazynu.

Dziedziczenie
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)

Parametry

Nazwa Opis
name
Wymagane
str

[Wymagane] Nazwa kroku.

source_data_reference

[Wymagane] Połączenie wejściowe, które służy jako źródło operacji transferu danych.

Domyślna wartość: None
destination_data_reference

[Wymagane] Połączenie wyjściowe, które służy jako miejsce docelowe operacji transferu danych.

Domyślna wartość: None
compute_target

[Wymagane] Azure Data Factory do użycia do przesyłania danych.

Domyślna wartość: None
source_reference_type
str

Opcjonalny ciąg określający typ source_data_reference. Możliwe wartości to: "file", "directory". Jeśli nie zostanie określony, używany jest typ istniejącej ścieżki. Użyj tego parametru, aby odróżnić plik i katalog o tej samej nazwie.

Domyślna wartość: None
destination_reference_type
str

Opcjonalny ciąg określający typ destination_data_reference. Możliwe wartości to: "file", "directory". Jeśli nie zostanie określony, usługa Azure ML używa typu istniejącej ścieżki, odwołania do źródła lub katalogu w tej kolejności.

Domyślna wartość: None
allow_reuse

Wskazuje, czy krok powinien ponownie używać poprzednich wyników po ponownym uruchomieniu z tymi samymi ustawieniami. Ponowne użycie jest domyślnie włączone. Jeśli argumenty kroku pozostaną niezmienione, dane wyjściowe z poprzedniego przebiegu tego kroku będą ponownie używane. Podczas ponownego wykonywania kroku, zamiast ponownie przesyłać dane, wyniki z poprzedniego przebiegu są natychmiast udostępniane wszystkim kolejnym krokom. Jeśli używasz zestawów danych usługi Azure Machine Learning jako danych wejściowych, ponowne użycie zależy od tego, czy definicja zestawu danych uległa zmianie, a nie przez to, czy dane bazowe uległy zmianie.

Domyślna wartość: True
name
Wymagane
str

[Wymagane] Nazwa kroku.

source_data_reference
Wymagane

[Wymagane] Połączenie wejściowe, które służy jako źródło operacji transferu danych.

destination_data_reference
Wymagane

[Wymagane] Połączenie wyjściowe, które służy jako miejsce docelowe operacji transferu danych.

compute_target
Wymagane

[Wymagane] Azure Data Factory do użycia do przesyłania danych.

source_reference_type
Wymagane
str

Opcjonalny ciąg określający typ source_data_reference. Możliwe wartości to: "file", "directory". Jeśli nie zostanie określony, używany jest typ istniejącej ścieżki. Użyj tego parametru, aby odróżnić plik i katalog o tej samej nazwie.

destination_reference_type
Wymagane
str

Opcjonalny ciąg określający typ destination_data_reference. Możliwe wartości to: "file", "directory". Jeśli nie zostanie określony, usługa Azure ML używa typu istniejącej ścieżki, odwołania do źródła lub katalogu w tej kolejności.

allow_reuse
Wymagane

Wskazuje, czy krok powinien ponownie używać poprzednich wyników po ponownym uruchomieniu z tymi samymi ustawieniami. Ponowne użycie jest domyślnie włączone. Jeśli argumenty kroku pozostaną niezmienione, dane wyjściowe z poprzedniego przebiegu tego kroku będą ponownie używane. Podczas ponownego wykonywania kroku, zamiast ponownie przesyłać dane, wyniki z poprzedniego przebiegu są natychmiast udostępniane wszystkim kolejnym krokom. Jeśli używasz zestawów danych usługi Azure Machine Learning jako danych wejściowych, ponowne użycie zależy od tego, czy definicja zestawu danych uległa zmianie, a nie przez to, czy dane bazowe uległy zmianie.

Uwagi

Ten krok obsługuje następujące typy magazynów jako źródła i ujścia, z wyjątkiem przypadków, w których zaznaczono:

  • Azure Blob Storage

  • Azure Data Lake Storage Gen1 i Gen2

  • Azure SQL Database

  • Azure Database for PostgreSQL

  • Azure Database for MySQL

W przypadku usługi Azure SQL Database należy użyć uwierzytelniania jednostki usługi. Aby uzyskać więcej informacji, zobacz Uwierzytelnianie jednostki usługi. Aby zapoznać się z przykładem użycia uwierzytelniania jednostki usługi dla usługi Azure SQL Database, zobacz https://aka.ms/pl-data-trans.

Aby ustanowić zależność danych między krokami, użyj get_output metody , aby uzyskać PipelineData obiekt reprezentujący dane wyjściowe tego kroku transferu danych i może służyć jako dane wejściowe do dalszych kroków potoku.


   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)

Aby utworzyć obiekt InputPortBinding o określonej nazwie, możesz połączyć dane wyjściowe get_output() z danymi wyjściowymi as_input metody lub as_mount .PipelineData


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

Metody

create_node

Utwórz węzeł na podstawie kroku DataTransfer i dodaj go do danego grafu.

Ta metoda nie jest przeznaczona do bezpośredniego użycia. Po utworzeniu wystąpienia potoku w tym kroku usługa Azure ML automatycznie przekazuje wymagane parametry za pośrednictwem tej metody, aby można było dodać krok do grafu potoku reprezentującego przepływ pracy.

get_output

Pobierz dane wyjściowe kroku jako PipelineData.

create_node

Utwórz węzeł na podstawie kroku DataTransfer i dodaj go do danego grafu.

Ta metoda nie jest przeznaczona do bezpośredniego użycia. Po utworzeniu wystąpienia potoku w tym kroku usługa Azure ML automatycznie przekazuje wymagane parametry za pośrednictwem tej metody, aby można było dodać krok do grafu potoku reprezentującego przepływ pracy.

create_node(graph, default_datastore, context)

Parametry

Nazwa Opis
graph
Wymagane

Obiekt grafu, do który ma zostać dodany węzeł.

default_datastore
Wymagane

Domyślny magazyn danych.

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

Kontekst grafu.

Zwraca

Typ Opis

Utworzony węzeł.

get_output

Pobierz dane wyjściowe kroku jako PipelineData.

get_output()

Zwraca

Typ Opis

Dane wyjściowe kroku.

Uwagi

Aby ustanowić zależność danych między krokami, użyj get_output metody , aby uzyskać PipelineData obiekt reprezentujący dane wyjściowe tego kroku transferu danych i może służyć jako dane wejściowe do dalszych kroków potoku.


   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)

Aby utworzyć obiekt InputPortBinding o określonej nazwie, możesz połączyć wywołanie get_output() z metodami as_input pomocnika lub as_mount .


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

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