Share via


SynapseSparkStep 클래스

참고

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

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

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

상속
azureml.pipeline.core._synapse_spark_step_base._SynapseSparkStepBase
SynapseSparkStep

생성자

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에 상대적인 시냅스 스크립트의 이름입니다.

source_directory
필수
str

Python 스크립트, conda 환경 및 단계에서 사용된 기타 리소스가 포함된 폴더입니다.

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 환경 및 단계에서 사용된 기타 리소스가 포함된 폴더입니다.

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은 시냅스 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

만들어진 노드입니다.