다음을 통해 공유


SynapseSparkStep 클래스

비고

이는 실험적 클래스이며 언제든지 변경 될 수 있습니다. 자세한 내용은 https://aka.ms/acr/connected-registry을 참조하세요.

Python 스크립트를 제출하고 실행하는 Azure ML Synapse 단계를 만듭니다.

synapse Spark 풀에서 Spark 작업을 실행하는 Azure ML 파이프라인 단계를 만듭니다.

생성자

SynapseSparkStep(file, source_directory, compute_target, driver_memory, driver_cores, executor_memory, executor_cores, num_executors, name=None, app_name=None, environment=None, arguments=None, inputs=None, outputs=None, conf=None, py_files=None, jars=None, files=None, allow_reuse=True, version=None)

매개 변수

Name Description
file
필수
str

source_directory 상대적인 synapse 스크립트의 이름입니다.

source_directory
필수
str

단계에서 사용되는 Python 스크립트, conda env 및 기타 리소스를 포함하는 폴더입니다.

compute_target
필수

사용할 컴퓨팅 대상입니다.

driver_memory
필수
str

드라이버 프로세스에 사용할 메모리 양입니다.

driver_cores
필수
int

드라이버 프로세스에 사용할 코어 수입니다.

executor_memory
필수
str

실행기 프로세스당 사용할 메모리 양입니다.

executor_cores
필수
int

각 실행기에서 사용할 코어 수입니다.

num_executors
필수
int

이 세션에 대해 시작할 실행기 수입니다.

name
필수
str

단계의 이름입니다. 지정 file 되지 않은 경우 사용됩니다.

app_name
필수
str

Spark 작업을 제출하는 데 사용되는 앱 이름입니다.

environment
필수

AML 환경은 이후 릴리스에서 지원됩니다.

arguments
필수

Synapse 스크립트 파일에 대한 명령줄 인수입니다.

inputs
필수

입력 목록입니다.

outputs
필수

출력 목록입니다.

conf
필수

Spark 구성 속성입니다.

py_files
필수

이 세션에서 사용할 Python 파일, livy API의 매개 변수입니다.

files
필수

이 세션에서 사용할 파일, livy API의 매개 변수입니다.

allow_reuse
필수

동일한 설정으로 다시 실행할 때 단계가 이전 결과를 다시 사용해야 하는지를 나타냅니다.

version
필수
str

단계의 기능 변경을 나타내는 선택적 버전 태그입니다.

file
필수
str

를 기준으로 하는 Synapse 스크립트의 이름입니다 source_directory.

source_directory
필수
str

단계에서 사용되는 Python 스크립트, conda env 및 기타 리소스를 포함하는 폴더입니다.

compute_target
필수

사용할 컴퓨팅 대상입니다.

driver_memory
필수
str

드라이버 프로세스에 사용할 메모리 양입니다.

driver_cores
필수
int

드라이버 프로세스에 사용할 코어 수입니다.

executor_memory
필수
str

실행기 프로세스당 사용할 메모리 양입니다.

executor_cores
필수
int

각 실행기에서 사용할 코어 수입니다.

num_executors
필수
int

이 세션에 대해 시작할 실행기 수입니다.

name
필수
str

단계의 이름입니다. 지정 file 되지 않은 경우 사용됩니다.

app_name
필수
str

Apache Spark 작업을 제출하는 데 사용되는 앱 이름입니다.

environment
필수

이 SynapseSparkStep에서 활용할 AML 환경입니다.

arguments
필수

Synapse 스크립트 파일에 대한 명령줄 인수입니다.

inputs
필수

입력 목록입니다.

outputs
필수

출력 목록입니다.

conf
필수

Spark 구성 속성입니다.

py_files
필수

이 세션에서 사용할 Python 파일, livy API의 매개 변수입니다.

jars
필수

이 세션에서 사용할 Jar 파일, livy API의 매개 변수입니다.

files
필수

이 세션에서 사용할 파일, livy API의 매개 변수입니다.

allow_reuse
필수

동일한 설정으로 다시 실행할 때 단계가 이전 결과를 다시 사용해야 하는지를 나타냅니다.

version
필수
str

단계의 기능 변경을 나타내는 선택적 버전 태그입니다.

설명

SynapseSparkStep은 synapse Spark 풀에서 Python Spark 작업을 실행하는 기본 제공 단계입니다. 기본 파일 이름 및 스크립트, 컴퓨팅 대상, 입력 및 출력에 대한 인수와 같은 기타 선택적 매개 변수를 사용합니다.

SynapseSparkStep을 사용하는 가장 좋은 방법은 스크립트 및 단계와 연결된 종속 파일에 대해 별도의 폴더를 사용하고 해당 폴더를 매개 변수로 source_directory 지정하는 것입니다. 이 모범 사례에 따르면 두 가지 이점이 있습니다. 먼저 단계에 필요한 것만 스냅샷으로 만들어지므로 단계에 대해 만든 스냅샷의 크기를 줄이는 데 도움이 됩니다. 둘째, 스냅샷의 다시 업로드를 트리거하는 변경 내용 source_directory 이 없는 경우 이전 실행의 단계 출력을 다시 사용할 수 있습니다.


   from azureml.core import Dataset
   from azureml.pipeline.steps import SynapseSparkStep
   from azureml.data import HDFSOutputDatasetConfig

   # get input dataset
   input_ds = Dataset.get_by_name(workspace, "weather_ds").as_named_input("weather_ds")

   # register pipeline output as dataset
   output_ds = HDFSOutputDatasetConfig("synapse_step_output",
                                       destination=(ws.datastores['datastore'],"dir")
                                       ).register_on_complete(name="registered_dataset")

   step_1 = SynapseSparkStep(
       name = "synapse_step",
       file = "pyspark_job.py",
       source_directory="./script",
       inputs=[input_ds],
       outputs=[output_ds],
       compute_target = "synapse",
       driver_memory = "7g",
       driver_cores = 4,
       executor_memory = "7g",
       executor_cores = 2,
       num_executors = 1,
       conf = {})

SynapseSparkStep은 DatasetConsumptionConfig만 입력으로, HDFSOutputDatasetConfig를 출력으로 지원합니다.

메서드

create_node

Synapse 스크립트 단계에 대한 노드를 만듭니다.

이 메서드는 직접 사용할 수 없습니다. 이 단계로 파이프라인이 인스턴스화되면 Azure ML은 워크플로를 나타내는 파이프라인 그래프에 단계를 추가할 수 있도록 이 메서드를 통해 필요한 매개 변수를 자동으로 전달합니다.

create_node

Synapse 스크립트 단계에 대한 노드를 만듭니다.

이 메서드는 직접 사용할 수 없습니다. 이 단계로 파이프라인이 인스턴스화되면 Azure ML은 워크플로를 나타내는 파이프라인 그래프에 단계를 추가할 수 있도록 이 메서드를 통해 필요한 매개 변수를 자동으로 전달합니다.

create_node(graph, default_datastore, context)

매개 변수

Name Description
graph
필수

노드를 추가할 그래프 개체입니다.

default_datastore
필수

기본 데이터 저장소입니다.

context
필수
<xref:azureml.pipeline.core._GraphContext>

그래프 컨텍스트입니다.

반환

형식 Description

만든 노드입니다.