Delen via


SynapseSparkStep Klas

Notitie

Dit is een experimentele klasse en kan op elk gewenst moment worden gewijzigd. Zie https://aka.ms/azuremlexperimental voor meer informatie.

Hiermee maakt u een Azure ML Synapse-stap waarmee een Python-script wordt verzonden en uitgevoerd.

Maak een Azure ML-pijplijnstap waarmee een Spark-taak wordt uitgevoerd op synapse Spark-pool.

Overname
azureml.pipeline.core._synapse_spark_step_base._SynapseSparkStepBase
SynapseSparkStep

Constructor

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)

Parameters

file
str
Vereist

De naam van een synapse-script ten opzichte van source_directory.

source_directory
str
Vereist

Een map met Python-script, conda env en andere resources die in de stap worden gebruikt.

compute_target
SynapseCompute of str
Vereist

Het te gebruiken rekendoel.

driver_memory
str
Vereist

De hoeveelheid geheugen die moet worden gebruikt voor het stuurprogrammaproces.

driver_cores
int
Vereist

Het aantal kernen dat moet worden gebruikt voor het stuurprogrammaproces.

executor_memory
str
Vereist

De hoeveelheid geheugen die per uitvoerderproces moet worden gebruikt.

executor_cores
int
Vereist

Het aantal kernen dat moet worden gebruikt voor elke uitvoerder.

num_executors
int
Vereist

Aantal uitvoerders dat voor deze sessie moet worden gestart.

name
str
Vereist

De naam van de stap. Indien niet opgegeven, file wordt gebruikt.

app_name
str
Vereist

De app-naam die wordt gebruikt om de Spark-taak te verzenden.

environment
Environment
Vereist

AML-omgeving wordt ondersteund in een latere release.

arguments
list
Vereist

Opdrachtregelargumenten voor het Synapse-scriptbestand.

inputs
list[DatasetConsumptionConfig]
Vereist

Een lijst met invoergegevens.

outputs
list[HDFSOutputDatasetConfig]
Vereist

Een lijst met uitvoer.

conf
dict
Vereist

Spark-configuratie-eigenschappen.

py_files
list
Vereist

Python-bestanden die in deze sessie moeten worden gebruikt, parameter van livy-API.

files
list
Vereist

Bestanden die in deze sessie moeten worden gebruikt, parameter van livy-API.

allow_reuse
bool
Vereist

Geeft aan of de stap eerdere resultaten opnieuw moet gebruiken wanneer deze opnieuw wordt uitgevoerd met dezelfde instellingen.

version
str
Vereist

Een optionele versietag om een wijziging in de functionaliteit voor de stap aan te geven.

file
str
Vereist

De naam van een Synapse-script ten opzichte source_directoryvan .

source_directory
str
Vereist

Een map met Python-script, conda env en andere resources die in de stap worden gebruikt.

compute_target
SynapseCompute of str
Vereist

Het te gebruiken rekendoel.

driver_memory
str
Vereist

De hoeveelheid geheugen die moet worden gebruikt voor het stuurprogrammaproces.

driver_cores
int
Vereist

Het aantal kernen dat moet worden gebruikt voor het stuurprogrammaproces.

executor_memory
str
Vereist

De hoeveelheid geheugen die per uitvoerderproces moet worden gebruikt.

executor_cores
int
Vereist

Het aantal kernen dat moet worden gebruikt voor elke uitvoerder.

num_executors
int
Vereist

Aantal uitvoerders dat voor deze sessie moet worden gestart.

name
str
Vereist

De naam van de stap. Indien niet opgegeven, file wordt gebruikt.

app_name
str
Vereist

De app-naam die wordt gebruikt om de Apache Spark-taak te verzenden.

environment
Environment
Vereist

AML-omgeving die wordt gebruikt in deze SynapseSparkStep.

arguments
list
Vereist

Opdrachtregelargumenten voor het Synapse-scriptbestand.

inputs
list[DatasetConsumptionConfig]
Vereist

Een lijst met invoergegevens.

outputs
list[HDFSOutputDatasetConfig]
Vereist

Een lijst met uitvoer.

conf
dict
Vereist

Spark-configuratie-eigenschappen.

py_files
list
Vereist

Python-bestanden die in deze sessie moeten worden gebruikt, parameter van livy-API.

jars
list
Vereist

JAR-bestanden die in deze sessie moeten worden gebruikt, parameter van livy-API.

files
list
Vereist

Bestanden die in deze sessie moeten worden gebruikt, parameter van livy-API.

allow_reuse
bool
Vereist

Geeft aan of de stap eerdere resultaten opnieuw moet gebruiken wanneer deze opnieuw wordt uitgevoerd met dezelfde instellingen.

version
str
Vereist

Een optionele versietag om een wijziging in de functionaliteit voor de stap aan te geven.

Opmerkingen

Een SynapseSparkStep is een eenvoudige, ingebouwde stap voor het uitvoeren van een Python Spark-taak in een Synapse Spark-pools. Hiervoor zijn een hoofdbestandsnaam en andere optionele parameters nodig, zoals argumenten voor het script, rekendoel, invoer en uitvoer.

De aanbevolen procedure voor het werken met SynapseSparkStep is om een afzonderlijke map te gebruiken voor scripts en eventuele afhankelijke bestanden die aan de stap zijn gekoppeld, en die map op te geven met de source_directory parameter . Het volgen van deze best practice heeft twee voordelen. Ten eerste helpt het de grootte van de momentopname te verkleinen die voor de stap is gemaakt, omdat alleen de momentopnamen worden gemaakt die nodig zijn voor de stap. Ten tweede kan de uitvoer van de stap van een vorige uitvoering opnieuw worden gebruikt als er geen wijzigingen zijn in de source_directory die een herupload van de momentopname activeren.


   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 ondersteunt alleen DatasetConsumptionConfig als invoer en HDFSOutputDatasetConfig als uitvoer.

Methoden

create_node

Maak een knooppunt voor synapse-scriptstap.

Deze methode is niet bedoeld om rechtstreeks te worden gebruikt. Wanneer een pijplijn wordt geïnstantieerd met deze stap, geeft Azure ML automatisch de vereiste parameters door via deze methode, zodat deze stap kan worden toegevoegd aan een pijplijngrafiek die de werkstroom vertegenwoordigt.

create_node

Maak een knooppunt voor synapse-scriptstap.

Deze methode is niet bedoeld om rechtstreeks te worden gebruikt. Wanneer een pijplijn wordt geïnstantieerd met deze stap, geeft Azure ML automatisch de vereiste parameters door via deze methode, zodat deze stap kan worden toegevoegd aan een pijplijngrafiek die de werkstroom vertegenwoordigt.

create_node(graph, default_datastore, context)

Parameters

graph
Graph
Vereist

Het grafiekobject waaraan u het knooppunt wilt toevoegen.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Vereist

Het standaardgegevensarchief.

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

De grafiekcontext.

Retouren

Het gemaakte knooppunt.

Retourtype