다음을 통해 공유


SparkJob 클래스

독립 실행형 Spark 작업입니다.

상속
azure.ai.ml.entities._job.job.Job
SparkJob
azure.ai.ml.entities._job.parameterized_spark.ParameterizedSpark
SparkJob
azure.ai.ml.entities._job.job_io_mixin.JobIOMixin
SparkJob
azure.ai.ml.entities._job.spark_job_entry_mixin.SparkJobEntryMixin
SparkJob

생성자

SparkJob(*, driver_cores: int | None = None, driver_memory: str | None = None, executor_cores: int | None = None, executor_memory: str | None = None, executor_instances: int | None = None, dynamic_allocation_enabled: bool | None = None, dynamic_allocation_min_executors: int | None = None, dynamic_allocation_max_executors: int | None = None, inputs: Dict | None = None, outputs: Dict | None = None, compute: str | None = None, identity: Dict[str, str] | ManagedIdentityConfiguration | AmlTokenConfiguration | UserIdentityConfiguration | None = None, resources: Dict | SparkResourceConfiguration | None = None, **kwargs)

매개 변수

driver_cores
Optional[int]

클러스터 모드에서만 드라이버 프로세스에 사용할 코어 수입니다.

driver_memory
Optional[str]

드라이버 프로세스에 사용할 메모리 양이며 크기 단위 접미사("k", "m", "g" 또는 "t")(예: "512m", "2g")가 있는 문자열 형식입니다.

executor_cores
Optional[int]

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

executor_memory
Optional[str]

실행기 프로세스당 사용할 메모리 양이며 크기 단위 접미사("k", "m", "g" 또는 "t")(예: "512m", "2g")가 있는 문자열 형식입니다.

executor_instances
Optional[int]

초기 실행기 수입니다.

dynamic_allocation_enabled
Optional[bool]

워크로드에 따라 이 애플리케이션에 등록된 실행기 수를 확장 및 축소하는 동적 리소스 할당을 사용할지 여부입니다.

dynamic_allocation_min_executors
Optional[int]

동적 할당을 사용하는 경우 실행기 수에 대한 하한입니다.

dynamic_allocation_max_executors
Optional[int]

동적 할당을 사용하는 경우 실행기 수의 상한입니다.

inputs
Optional[dict[str, Input]]

작업에 사용되는 입력 데이터 바인딩의 매핑입니다.

outputs
Optional[dict[str, Output]]

작업에 사용되는 출력 데이터 바인딩의 매핑입니다.

compute
Optional[str]

작업이 실행되는 컴퓨팅 리소스입니다.

identity
Optional[Union[dict[str, str], ManagedIdentityConfiguration, AmlTokenConfiguration, UserIdentityConfiguration]]

컴퓨팅에서 실행하는 동안 Spark 작업이 사용할 ID입니다.

예제

SparkJob 구성


   from azure.ai.ml import Input, Output
   from azure.ai.ml.entities import SparkJob

   spark_job = SparkJob(
       code="./sdk/ml/azure-ai-ml/tests/test_configs/dsl_pipeline/spark_job_in_pipeline/basic_src",
       entry={"file": "sampleword.py"},
       conf={
           "spark.driver.cores": 2,
           "spark.driver.memory": "1g",
           "spark.executor.cores": 1,
           "spark.executor.memory": "1g",
           "spark.executor.instances": 1,
       },
       environment="AzureML-sklearn-1.0-ubuntu20.04-py38-cpu:33",
       inputs={
           "input1": Input(
               type="uri_file", path="azureml://datastores/workspaceblobstore/paths/python/data.csv", mode="direct"
           )
       },
       compute="synapsecompute",
       outputs={"component_out_path": Output(type="uri_folder")},
       args="--input1 ${{inputs.input1}} --output2 ${{outputs.output1}} --my_sample_rate ${{inputs.sample_rate}}",
   )


메서드

dump

YAML 형식의 파일로 작업 콘텐츠를 덤프합니다.

filter_conf_fields

~azure.ai.ml._schema.job.parameterized_spark에 나열된 Spark 구성 필드에 속하지 않는 conf 특성의 필드를 필터링합니다. CONF_KEY_MAP 자체 사전에서 반환합니다.

dump

YAML 형식의 파일로 작업 콘텐츠를 덤프합니다.

dump(dest: str | PathLike | IO, **kwargs) -> None

매개 변수

dest
Union[<xref:PathLike>, str, IO[AnyStr]]
필수

YAML 콘텐츠를 쓸 로컬 경로 또는 파일 스트림입니다. dest가 파일 경로인 경우 새 파일이 만들어집니다. dest가 열려 있는 파일인 경우 파일이 직접 에 기록됩니다.

kwargs
dict

YAML serializer에 전달할 추가 인수입니다.

예외

dest가 파일 경로이고 파일이 이미 있는 경우 발생합니다.

dest가 열려 있는 파일이고 파일을 쓸 수 없는 경우 발생합니다.

filter_conf_fields

~azure.ai.ml._schema.job.parameterized_spark에 나열된 Spark 구성 필드에 속하지 않는 conf 특성의 필드를 필터링합니다. CONF_KEY_MAP 자체 사전에서 반환합니다.

filter_conf_fields() -> Dict[str, str]

반환

Spark 구성 필드가 아닌 conf 필드의 사전입니다.

반환 형식

예외

dest가 파일 경로이고 파일이 이미 있는 경우 발생합니다.

dest가 열려 있는 파일이고 파일을 쓸 수 없는 경우 발생합니다.

특성

base_path

리소스의 기본 경로입니다.

반환

리소스의 기본 경로입니다.

반환 형식

str

creation_context

리소스의 만들기 컨텍스트입니다.

반환

리소스에 대한 만들기 메타데이터입니다.

반환 형식

entry

environment

Spark 구성 요소 또는 작업을 실행할 Azure ML 환경입니다.

반환

Spark 구성 요소 또는 작업을 실행할 Azure ML 환경입니다.

반환 형식

id

리소스 ID입니다.

반환

리소스의 전역 ID인 ARM(Azure Resource Manager) ID입니다.

반환 형식

identity

컴퓨팅에서 실행하는 동안 Spark 작업이 사용할 ID입니다.

반환

컴퓨팅에서 실행하는 동안 Spark 작업이 사용할 ID입니다.

반환 형식

inputs

log_files

작업 출력 파일.

반환

로그 이름 및 URL의 사전입니다.

반환 형식

outputs

resources

작업에 대한 컴퓨팅 리소스 구성입니다.

반환

작업에 대한 컴퓨팅 리소스 구성입니다.

반환 형식

status

작업의 상태.

반환되는 일반적인 값에는 “Running”, “Completed”, “Failed”가 포함됩니다. 가능한 모든 값은 다음과 같습니다.

  • NotStarted - 클라우드 제출 전에 클라이언트 쪽 Run 개체가 있는 임시 상태입니다.

  • Starting - 실행이 클라우드에서 처리되기 시작했습니다. 호출자에게는 이 시점에서 실행 ID가 있습니다.

  • 프로비저닝 - 지정된 작업 제출을 위해 주문형 컴퓨팅을 만들고 있습니다.

  • 준비 중 - 실행 환경이 준비 중이며 다음 두 단계 중 하나입니다.

    • Docker 이미지 빌드

    • conda 환경 설정

  • 대기 중 - 작업이 컴퓨팅 대상에서 큐에 대기됩니다. 예를 들어 BatchAI에서 작업은 큐에 대기 상태입니다.

    요청된 모든 노드가 준비될 때까지 기다리는 동안 대기 상태입니다.

  • 실행 중 - 컴퓨팅 대상에서 작업이 실행되기 시작했습니다.

  • Finalizing - 사용자 코드 실행이 완료되었으며 실행이 사후 처리 단계에 있습니다.

  • CancelRequested - 작업에 대한 취소가 요청되었습니다.

  • 완료됨 - 실행이 성공적으로 완료되었습니다. 여기에는 사용자 코드 실행 및 실행이 모두 포함됩니다.

    사후 처리 단계입니다.

  • Failed - 실행이 실패했습니다. 일반적으로 실행의 오류 속성은 이유에 대한 세부 정보를 제공합니다.

  • Canceled - 취소 요청을 따르고 실행이 성공적으로 취소되었음을 나타냅니다.

  • NotResponding - 하트비트를 사용하도록 설정한 실행의 경우 최근에 하트비트를 보내지 않았습니다.

반환

작업의 상태.

반환 형식

studio_url

Azure ML 스튜디오 엔드포인트.

반환

작업 세부 정보 페이지의 URL입니다.

반환 형식

type

작업의 형식입니다.

반환

작업의 형식입니다.

반환 형식

CODE_ID_RE_PATTERN

CODE_ID_RE_PATTERN = re.compile('\\/subscriptions\\/(?P<subscription>[\\w,-]+)\\/resourceGroups\\/(?P<resource_group>[\\w,-]+)\\/providers\\/Microsoft\\.MachineLearningServices\\/workspaces\\/(?P<workspace>[\\w,-]+)\\/codes\\/(?P<co)