DataTransferStep 클래스
스토리지 옵션 간에 데이터를 전송하는 Azure ML 파이프라인 단계를 만듭니다.
DataTransferStep은 원본 및 싱크로 Azure Blob Storage 및 Azure Data Lake와 같은 일반적인 스토리지 형식을 지원합니다. 자세한 내용은 주의 섹션을 참조하세요.
DataTransferStep 사용 예제는 Notebook https://aka.ms/pl-data-trans를 참조하세요.
스토리지 옵션 간에 데이터를 전송하는 Azure ML 파이프라인 단계를 만듭니다.
- 상속
-
azureml.pipeline.core._data_transfer_step_base._DataTransferStepBaseDataTransferStep
생성자
DataTransferStep(name, source_data_reference=None, destination_data_reference=None, compute_target=None, source_reference_type=None, destination_reference_type=None, allow_reuse=True)
매개 변수
Name | Description |
---|---|
name
필수
|
[필수] 단계의 이름입니다. |
source_data_reference
|
[필수] 데이터 전송 작업의 원본 역할을 하는 입력 연결입니다. Default value: None
|
destination_data_reference
|
[필수] 데이터 전송 작업의 대상 역할을 하는 출력 연결입니다. Default value: None
|
compute_target
|
[필수] 데이터 전송에 사용할 Azure Data Factory입니다. Default value: None
|
source_reference_type
|
Default value: None
|
destination_reference_type
|
Default value: None
|
allow_reuse
|
동일한 설정으로 다시 실행할 때 단계에서 이전 결과를 재사용해야 하는지 여부를 나타냅니다. 기본적으로 재사용하도록 설정됩니다. 단계 인수가 변경되지 않은 상태로 유지되면 이 단계의 이전 실행 출력이 다시 사용됩니다. 단계를 재사용할 때, 데이터를 다시 전송하는 대신 이전 실행의 결과를 후속 단계에 즉시 사용할 수 있습니다. Azure Machine Learning 데이터 세트를 입력으로 사용하는 경우 재사용은 기본 데이터가 변경되었는지 여부가 아니라 데이터 세트의 정의가 변경되었는지 여부에 따라 결정됩니다. Default value: True
|
name
필수
|
[필수] 단계의 이름입니다. |
source_data_reference
필수
|
[필수] 데이터 전송 작업의 원본 역할을 하는 입력 연결입니다. |
destination_data_reference
필수
|
[필수] 데이터 전송 작업의 대상 역할을 하는 출력 연결입니다. |
compute_target
필수
|
[필수] 데이터 전송에 사용할 Azure Data Factory입니다. |
source_reference_type
필수
|
|
destination_reference_type
필수
|
|
allow_reuse
필수
|
동일한 설정으로 다시 실행할 때 단계에서 이전 결과를 재사용해야 하는지 여부를 나타냅니다. 기본적으로 재사용하도록 설정됩니다. 단계 인수가 변경되지 않은 상태로 유지되면 이 단계의 이전 실행 출력이 다시 사용됩니다. 단계를 재사용할 때, 데이터를 다시 전송하는 대신 이전 실행의 결과를 후속 단계에 즉시 사용할 수 있습니다. Azure Machine Learning 데이터 세트를 입력으로 사용하는 경우 재사용은 기본 데이터가 변경되었는지 여부가 아니라 데이터 세트의 정의가 변경되었는지 여부에 따라 결정됩니다. |
설명
이 단계에서는 명시된 경우를 제외하고 다음 스토리지 유형을 원본 및 싱크로 지원합니다.
Azure Blob Storage
Azure Data Lake Storage Gen1 및 Gen2
Azure SQL Database
Azure Database for PostgreSQL
Azure Database for MySQL
Azure SQL Database의 경우 서비스 주체 인증을 사용해야 합니다. 자세한 내용은 서비스 주체 인증을 참조하세요. Azure SQL Database에 대한 서비스 주체 인증을 사용하는 예제는 https://aka.ms/pl-data-trans을 참조하세요.
단계 간에 데이터 종속성을 설정하려면 get_output 메서드를 사용하여 이 데이터 전송 단계의 출력을 나타내는 PipelineData 개체를 가져와 파이프라인의 이후 단계에 대한 입력으로 사용할 수 있습니다.
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)
특정 이름을 사용하여 InputPortBinding을 만들려면 get_output() 출력을 PipelineData의 as_input 또는 as_mount 메서드와 결합할 수 있습니다.
data_transfer_step = DataTransferStep(name="copy data", ...)
training_input = data_transfer_step.get_output().as_input("my_input_name")
메서드
create_node |
DataTransfer 단계에서 노드를 만들고 지정된 그래프에 추가합니다. 이 메서드는 직접 사용할 수 없습니다. 이 단계에서 파이프라인이 인스턴스화되면 Azure ML은 이 메서드를 통해 필요한 매개 변수를 자동으로 전달하므로 워크플로를 나타내는 파이프라인 그래프에 단계를 추가할 수 있습니다. |
get_output |
단계의 출력을 PipelineData로 가져옵니다. |
create_node
DataTransfer 단계에서 노드를 만들고 지정된 그래프에 추가합니다.
이 메서드는 직접 사용할 수 없습니다. 이 단계에서 파이프라인이 인스턴스화되면 Azure ML은 이 메서드를 통해 필요한 매개 변수를 자동으로 전달하므로 워크플로를 나타내는 파이프라인 그래프에 단계를 추가할 수 있습니다.
create_node(graph, default_datastore, context)
매개 변수
Name | Description |
---|---|
graph
필수
|
노드를 추가할 그래프 개체입니다. |
default_datastore
필수
|
기본 데이터 저장소입니다. |
context
필수
|
<xref:azureml.pipeline.core._GraphContext>
그래프 컨텍스트입니다. |
반환
형식 | Description |
---|---|
만들어진 노드입니다. |
get_output
단계의 출력을 PipelineData로 가져옵니다.
get_output()
반환
형식 | Description |
---|---|
단계의 출력입니다. |
설명
단계 간에 데이터 종속성을 설정하려면 get_output 메서드를 사용하여 이 데이터 전송 단계의 출력을 나타내는 PipelineData 개체를 가져와 파이프라인의 이후 단계에 대한 입력으로 사용할 수 있습니다.
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)
특정 이름을 사용하여 InputPortBinding을 만들려면 get_output() 호출을 as_input 또는 as_mount 도우미 메서드와 결합할 수 있습니다.
data_transfer_step = DataTransferStep(name="copy data", ...)
training_input = data_transfer_step.get_output().as_input("my_input_name")