DataTransferStep Clase
Crea un paso de canalización de Azure ML que transfiere datos entre las opciones de almacenamiento.
DataTransferStep admite tipos de almacenamiento comunes (por ejemplo, Azure Blob Storage y Azure Data Lake) como orígenes y receptores. Para más información, vea la sección Notas.
Para un ejemplo del uso de DataTransferStep, consulte el cuaderno https://aka.ms/pl-data-trans.
Cree un paso de canalización de Azure ML que transfiera datos entre opciones de almacenamiento.
- Herencia
-
azureml.pipeline.core._data_transfer_step_base._DataTransferStepBaseDataTransferStep
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)
Parámetros
- source_data_reference
- Union[InputPortBinding, DataReference, PortDataReference, PipelineData]
[Obligatorio] Una conexión de entrada que actúa como origen de la operación de transferencia de datos.
- destination_data_reference
- Union[InputPortBinding, PipelineOutputAbstractDataset, DataReference]
[Obligatorio] Una conexión de salida que actúa como destino de la operación de transferencia de datos.
- compute_target
- DataFactoryCompute, str
[Obligatorio] Una instancia de Azure Data Factory para usar para transferir datos.
- source_reference_type
- str
Una cadena opcional que especifica el tipo de source_data_reference
. Entre los valores posibles se incluyen: "file" y "directory". Cuando no se especifica, se usa el tipo de ruta de acceso existente.
Use este parámetro para diferenciar entre un archivo y un directorio que tienen el mismo nombre.
- destination_reference_type
- str
Una cadena opcional que especifica el tipo de destination_data_reference
.
Entre los valores posibles se incluyen: "file" y "directory". Cuando no se especifica, Azure ML el tipo de ruta de acceso existente, la referencia de origen o "directory", en ese orden.
- allow_reuse
- bool
Indica si el paso debe volver a usar los resultados anteriores cuando se vuelve a ejecutar con la misma configuración. La reutilización está habilitada de manera predeterminada. Si los argumentos del paso permanecen sin cambios, se vuelve a usar la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de volver a transferir los datos, los resultados de la ejecución anterior se ponen a disposición de inmediato para los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado.
- source_data_reference
- Union[InputPortBinding, DataReference, PortDataReference, PipelineData]
[Obligatorio] Una conexión de entrada que actúa como origen de la operación de transferencia de datos.
- destination_data_reference
- Union[InputPortBinding, PipelineOutputAbstractDataset, DataReference]
[Obligatorio] Una conexión de salida que actúa como destino de la operación de transferencia de datos.
- compute_target
- DataFactoryCompute, str
[Obligatorio] Una instancia de Azure Data Factory para usar para transferir datos.
- source_reference_type
- str
Una cadena opcional que especifica el tipo de source_data_reference
. Entre los valores posibles se incluyen: "file" y "directory". Cuando no se especifica, se usa el tipo de ruta de acceso existente.
Use este parámetro para diferenciar entre un archivo y un directorio que tienen el mismo nombre.
- destination_reference_type
- str
Una cadena opcional que especifica el tipo de destination_data_reference
.
Entre los valores posibles se incluyen: "file" y "directory". Cuando no se especifica, Azure ML el tipo de ruta de acceso existente, la referencia de origen o "directory", en ese orden.
- allow_reuse
- bool
Indica si el paso debe volver a usar los resultados anteriores cuando se vuelve a ejecutar con la misma configuración. La reutilización está habilitada de manera predeterminada. Si los argumentos del paso permanecen sin cambios, se vuelve a usar la salida de la ejecución anterior de este paso. Al volver a usar el paso, en lugar de volver a transferir los datos, los resultados de la ejecución anterior se ponen a disposición de inmediato para los pasos posteriores. Si usa conjuntos de datos de Azure Machine Learning como entradas, la reutilización viene determinada por si la definición del conjunto de datos ha cambiado, no por si los datos subyacentes han cambiado.
Comentarios
Este paso admite los siguientes tipos de almacenamiento como orígenes y receptores, excepto donde se indica:
Azure Blob Storage
Azure Data Lake Storage Gen1 y Gen2
Azure SQL Database
Azure Database for PostgreSQL
Azure Database for MySQL
Para Azure SQL Database, debe usar la autenticación de entidad de servicio. Para más información, consulte Autenticación de entidad de servicio. Para obtener un ejemplo del uso de la autenticación de entidad de servicio para Azure SQL Database, consulte https://aka.ms/pl-data-trans.
Para establecer la dependencia de datos entre pasos, use el método get_output para obtener un objeto PipelineData que represente la salida de este paso de transferencia de datos y que se pueda usar como entrada para los pasos posteriores de la canalización.
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)
Para crear InputPortBinding con un nombre específico, puede combinar la salida get_output() con la salida de los métodos as_input o as_mount de PipelineData.
data_transfer_step = DataTransferStep(name="copy data", ...)
training_input = data_transfer_step.get_output().as_input("my_input_name")
Métodos
create_node |
Cree un nodo a partir del paso DataTransfer y agréguelo al grafo especificado. Este método no está pensado para usarse directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que ese paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo. |
get_output |
Obtenga la salida del paso como PipelineData. |
create_node
Cree un nodo a partir del paso DataTransfer y agréguelo al grafo especificado.
Este método no está pensado para usarse directamente. Cuando se crea una instancia de una canalización con este paso, Azure ML pasa automáticamente los parámetros necesarios a través de este método para que ese paso se pueda agregar a un grafo de canalización que represente el flujo de trabajo.
create_node(graph, default_datastore, context)
Parámetros
- default_datastore
- Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
El almacén de datos predeterminado.
- context
- <xref:azureml.pipeline.core._GraphContext>
El contexto del grafo.
Devoluciones
El nodo creado.
Tipo de valor devuelto
get_output
Obtenga la salida del paso como PipelineData.
get_output()
Devoluciones
La salida del paso.
Tipo de valor devuelto
Comentarios
Para establecer la dependencia de datos entre pasos, use el método get_output para obtener un objeto PipelineData que represente la salida de este paso de transferencia de datos y que se pueda usar como entrada para los pasos posteriores de la canalización.
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)
Para crear una clase InputPortBinding con un nombre específico, puede combinar la llamada get_output() con métodos auxiliares as_input o as_mount.
data_transfer_step = DataTransferStep(name="copy data", ...)
training_input = data_transfer_step.get_output().as_input("my_input_name")
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de