DataTransferStep Classe
Crea un passaggio di Azure ML Pipeline che trasferisce i dati tra le opzioni di archiviazione.
DataTransferStep supporta tipi di archiviazione comuni, ad esempio Archiviazione BLOB di Azure e Azure Data Lake come origini e sink. Per altre informazioni, vedere la sezione Osservazioni .
Per un esempio di uso di DataTransferStep, vedere il notebook https://aka.ms/pl-data-trans.
Creare un passaggio di Azure ML Pipeline che trasferisce i dati tra le opzioni di archiviazione.
- Ereditarietà
-
azureml.pipeline.core._data_transfer_step_base._DataTransferStepBaseDataTransferStep
Costruttore
DataTransferStep(name, source_data_reference=None, destination_data_reference=None, compute_target=None, source_reference_type=None, destination_reference_type=None, allow_reuse=True)
Parametri
Nome | Descrizione |
---|---|
name
Necessario
|
[Obbligatorio] Nome del passaggio. |
source_data_reference
|
[Obbligatorio] Connessione di input che funge da origine dell'operazione di trasferimento dei dati. Valore predefinito: None
|
destination_data_reference
|
[Obbligatorio] Connessione di output che funge da destinazione dell'operazione di trasferimento dati. Valore predefinito: None
|
compute_target
|
[Obbligatorio] Un Azure Data Factory da usare per il trasferimento dei dati. Valore predefinito: None
|
source_reference_type
|
Stringa facoltativa che specifica il tipo di Valore predefinito: None
|
destination_reference_type
|
Stringa facoltativa che specifica il tipo di Valore predefinito: None
|
allow_reuse
|
Indica se il passaggio deve riutilizzare i risultati precedenti quando si esegue di nuovo con le stesse impostazioni. Il riutilizzo è abilitato per impostazione predefinita. Se gli argomenti dei passaggi rimangono invariati, l'output dell'esecuzione precedente di questo passaggio viene riutilizzato. Quando si riutilizza il passaggio, anziché trasferire nuovamente i dati, i risultati dell'esecuzione precedente vengono immediatamente resi disponibili per tutti i passaggi successivi. Se si usano set di dati di Azure Machine Learning come input, il riutilizzo è determinato dal fatto che la definizione del set di dati sia stata modificata, non dal fatto che i dati sottostanti siano stati modificati. Valore predefinito: True
|
name
Necessario
|
[Obbligatorio] Nome del passaggio. |
source_data_reference
Necessario
|
[Obbligatorio] Connessione di input che funge da origine dell'operazione di trasferimento dei dati. |
destination_data_reference
Necessario
|
[Obbligatorio] Connessione di output che funge da destinazione dell'operazione di trasferimento dati. |
compute_target
Necessario
|
[Obbligatorio] Un Azure Data Factory da usare per il trasferimento dei dati. |
source_reference_type
Necessario
|
Stringa facoltativa che specifica il tipo di |
destination_reference_type
Necessario
|
Stringa facoltativa che specifica il tipo di |
allow_reuse
Necessario
|
Indica se il passaggio deve riutilizzare i risultati precedenti quando si esegue di nuovo con le stesse impostazioni. Il riutilizzo è abilitato per impostazione predefinita. Se gli argomenti dei passaggi rimangono invariati, l'output dell'esecuzione precedente di questo passaggio viene riutilizzato. Quando si riutilizza il passaggio, anziché trasferire nuovamente i dati, i risultati dell'esecuzione precedente vengono immediatamente resi disponibili per tutti i passaggi successivi. Se si usano set di dati di Azure Machine Learning come input, il riutilizzo è determinato dal fatto che la definizione del set di dati sia stata modificata, non dal fatto che i dati sottostanti siano stati modificati. |
Commenti
Questo passaggio supporta i tipi di archiviazione seguenti come origini e sink, ad eccezione del caso indicato:
Archiviazione BLOB di Azure
Azure Data Lake Storage Gen1 e Gen2
Database SQL di Azure
Database di Azure per PostgreSQL
Database di Azure per MySQL
Per Azure SQL Database, è necessario usare l'autenticazione dell'entità servizio. Per altre informazioni, vedere Autenticazione dell'entità servizio. Per un esempio di uso dell'autenticazione dell'entità servizio per Azure SQL Database, vedere https://aka.ms/pl-data-trans.
Per stabilire la dipendenza dei dati tra i passaggi, usare il get_output metodo per ottenere un PipelineData oggetto che rappresenta l'output di questo passaggio di trasferimento dati e può essere usato come input per i passaggi successivi della 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)
Per creare un oggetto con un InputPortBinding nome specifico, è possibile combinare l'output get_output() con l'output dei as_input metodi o as_mount di PipelineData.
data_transfer_step = DataTransferStep(name="copy data", ...)
training_input = data_transfer_step.get_output().as_input("my_input_name")
Metodi
create_node |
Creare un nodo dal passaggio DataTransfer e aggiungerlo al grafico specificato. Questo metodo non deve essere usato direttamente. Quando viene creata un'istanza di una pipeline con questo passaggio, Azure ML passa automaticamente i parametri necessari tramite questo metodo in modo che il passaggio possa essere aggiunto a un grafico della pipeline che rappresenta il flusso di lavoro. |
get_output |
Ottenere l'output del passaggio come PipelineData. |
create_node
Creare un nodo dal passaggio DataTransfer e aggiungerlo al grafico specificato.
Questo metodo non deve essere usato direttamente. Quando viene creata un'istanza di una pipeline con questo passaggio, Azure ML passa automaticamente i parametri necessari tramite questo metodo in modo che il passaggio possa essere aggiunto a un grafico della pipeline che rappresenta il flusso di lavoro.
create_node(graph, default_datastore, context)
Parametri
Nome | Descrizione |
---|---|
graph
Necessario
|
Oggetto graph a cui aggiungere il nodo. |
default_datastore
Necessario
|
Archivio dati predefinito. |
context
Necessario
|
<xref:azureml.pipeline.core._GraphContext>
Contesto del grafico. |
Restituisce
Tipo | Descrizione |
---|---|
Nodo creato. |
get_output
Ottenere l'output del passaggio come PipelineData.
get_output()
Restituisce
Tipo | Descrizione |
---|---|
Output del passaggio. |
Commenti
Per stabilire la dipendenza dei dati tra i passaggi, usare get_output il metodo per ottenere un PipelineData oggetto che rappresenta l'output di questo passaggio di trasferimento dati e può essere usato come input per i passaggi successivi della 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)
Per creare un oggetto con un InputPortBinding nome specifico, è possibile combinare get_output() chiamata con as_input o as_mount metodi helper.
data_transfer_step = DataTransferStep(name="copy data", ...)
training_input = data_transfer_step.get_output().as_input("my_input_name")