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

file
str
Obligatorisk

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

source_directory
str
Obligatorisk

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

compute_target
SynapseCompute eller str
Obligatorisk

Beräkningsmålet som ska användas.

driver_memory
str
Obligatorisk

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

driver_cores
int
Obligatorisk

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

executor_memory
str
Obligatorisk

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

executor_cores
int
Obligatorisk

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

num_executors
int
Obligatorisk

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

name
str
Obligatorisk

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

app_name
str
Obligatorisk

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

environment
Environment
Obligatorisk

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

arguments
list
Obligatorisk

Kommandoradsargument för Synapse-skriptfilen.

inputs
list[DatasetConsumptionConfig]
Obligatorisk

En lista över indata.

outputs
list[HDFSOutputDatasetConfig]
Obligatorisk

En lista över utdata.

conf
dict
Obligatorisk

Spark-konfigurationsegenskaper.

py_files
list
Obligatorisk

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

files
list
Obligatorisk

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

allow_reuse
bool
Obligatorisk

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

version
str
Obligatorisk

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

file
str
Obligatorisk

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

source_directory
str
Obligatorisk

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

compute_target
SynapseCompute eller str
Obligatorisk

Beräkningsmålet som ska användas.

driver_memory
str
Obligatorisk

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

driver_cores
int
Obligatorisk

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

executor_memory
str
Obligatorisk

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

executor_cores
int
Obligatorisk

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

num_executors
int
Obligatorisk

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

name
str
Obligatorisk

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

app_name
str
Obligatorisk

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

environment
Environment
Obligatorisk

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

arguments
list
Obligatorisk

Kommandoradsargument för Synapse-skriptfilen.

inputs
list[DatasetConsumptionConfig]
Obligatorisk

En lista över indata.

outputs
list[HDFSOutputDatasetConfig]
Obligatorisk

En lista över utdata.

conf
dict
Obligatorisk

Spark-konfigurationsegenskaper.

py_files
list
Obligatorisk

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

jars
list
Obligatorisk

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

files
list
Obligatorisk

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

allow_reuse
bool
Obligatorisk

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

version
str
Obligatorisk

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

graph
Graph
Obligatorisk

Grafobjektet som noden ska läggas till i.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Obligatorisk

Standarddatalagringen.

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

Grafkontexten.

Returer

Den skapade noden.

Returtyp