Dela via


SynapseSparkStep Klass

Anteckning

Det här är en experimentell klass och kan ändras när som helst. Mer information finns i https://aka.ms/azuremlexperimental.

Skapar ett Azure ML Synapse-steg som skickar och kör Python-skript.

Skapa ett Azure ML Pipeline-steg som kör Spark-jobb i Synapse Spark-poolen.

Arv
azureml.pipeline.core._synapse_spark_step_base._SynapseSparkStepBase
SynapseSparkStep

Konstruktor

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)

Parametrar

Name Description
file
Obligatorisk
str

Namnet på ett synapse-skript i förhållande till source_directory.

source_directory
Obligatorisk
str

En mapp som innehåller Python-skript, conda env och andra resurser som används i steget.

compute_target
Obligatorisk

Beräkningsmålet som ska användas.

driver_memory
Obligatorisk
str

Mängden minne som ska användas för drivrutinsprocessen.

driver_cores
Obligatorisk
int

Antal kärnor som ska användas för drivrutinsprocessen.

executor_memory
Obligatorisk
str

Mängden minne som ska användas per körprocess.

executor_cores
Obligatorisk
int

Antal kärnor som ska användas för varje utförare.

num_executors
Obligatorisk
int

Antal utförare som ska startas för den här sessionen.

name
Obligatorisk
str

Namnet på steget. Om det är ospecificerat file används.

app_name
Obligatorisk
str

Appnamnet som används för att skicka spark-jobbet.

environment
Obligatorisk

AML-miljön stöds i senare versioner.

arguments
Obligatorisk

Kommandoradsargument för Synapse-skriptfilen.

inputs
Obligatorisk

En lista över indata.

outputs
Obligatorisk

En lista över utdata.

conf
Obligatorisk

Spark-konfigurationsegenskaper.

py_files
Obligatorisk

Python-filer som ska användas i den här sessionen, parametern för livy API.

files
Obligatorisk

Filer som ska användas i den här sessionen, parametern för livy API.

allow_reuse
Obligatorisk

Anger om steget ska återanvända tidigare resultat när det körs igen med samma inställningar.

version
Obligatorisk
str

En valfri versionstagg som anger en funktionsändring för steget.

file
Obligatorisk
str

Namnet på ett Synapse-skript i förhållande till source_directory.

source_directory
Obligatorisk
str

En mapp som innehåller Python-skript, conda env och andra resurser som används i steget.

compute_target
Obligatorisk

Beräkningsmålet som ska användas.

driver_memory
Obligatorisk
str

Mängden minne som ska användas för drivrutinsprocessen.

driver_cores
Obligatorisk
int

Antal kärnor som ska användas för drivrutinsprocessen.

executor_memory
Obligatorisk
str

Mängden minne som ska användas per körprocess.

executor_cores
Obligatorisk
int

Antal kärnor som ska användas för varje utförare.

num_executors
Obligatorisk
int

Antal utförare som ska startas för den här sessionen.

name
Obligatorisk
str

Namnet på steget. Om det är ospecificerat file används.

app_name
Obligatorisk
str

Appnamnet som används för att skicka Apache Spark-jobbet.

environment
Obligatorisk

AML-miljö som kommer att utnyttjas i denna SynapseSparkStep.

arguments
Obligatorisk

Kommandoradsargument för Synapse-skriptfilen.

inputs
Obligatorisk

En lista över indata.

outputs
Obligatorisk

En lista över utdata.

conf
Obligatorisk

Spark-konfigurationsegenskaper.

py_files
Obligatorisk

Python-filer som ska användas i den här sessionen, parametern för livy API.

jars
Obligatorisk

Jar-filer som ska användas i den här sessionen, parametern för livy API.

files
Obligatorisk

Filer som ska användas i den här sessionen, parametern för livy API.

allow_reuse
Obligatorisk

Anger om steget ska återanvända tidigare resultat när det körs igen med samma inställningar.

version
Obligatorisk
str

En valfri versionstagg som anger en funktionsändring för steget.

Kommentarer

En SynapseSparkStep är ett grundläggande, inbyggt steg för att köra ett Python Spark-jobb på en Synapse Spark-pool. Det tar ett huvudfilnamn och andra valfria parametrar som argument för skriptet, beräkningsmålet, indata och utdata.

Det bästa sättet att arbeta med SynapseSparkStep är att använda en separat mapp för skript och beroende filer som är associerade med steget och ange mappen med parametern source_directory . Att följa den här bästa metoden har två fördelar. Först hjälper det till att minska storleken på ögonblicksbilden som skapats för steget eftersom endast det som behövs för steget ögonblicksbilderas. För det andra kan stegets utdata från en tidigare körning återanvändas om det inte finns några ändringar i source_directory som skulle utlösa en återuppladdning av ögonblicksbilden.


   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 stöder endast DatasetConsumptionConfig som indata och HDFSOutputDatasetConfig som utdata.

Metoder

create_node

Skapa en nod för Synapse-skriptsteget.

Den här metoden är inte avsedd att användas direkt. När en pipeline instansieras med det här steget skickar Azure ML automatiskt de parametrar som krävs via den här metoden så att steget kan läggas till i ett pipelinediagram som representerar arbetsflödet.

create_node

Skapa en nod för Synapse-skriptsteget.

Den här metoden är inte avsedd att användas direkt. När en pipeline instansieras med det här steget skickar Azure ML automatiskt de parametrar som krävs via den här metoden så att steget kan läggas till i ett pipelinediagram som representerar arbetsflödet.

create_node(graph, default_datastore, context)

Parametrar

Name Description
graph
Obligatorisk

Grafobjektet som noden ska läggas till i.

default_datastore
Obligatorisk

Standarddatalagringen.

context
Obligatorisk
<xref:azureml.pipeline.core._GraphContext>

Grafkontexten.

Returer

Typ Description

Den skapade noden.