Partager via


SynapseSparkStep Classe

Notes

Il s’agit d’une classe expérimentale qui peut changer à tout moment. Pour plus d’informations, consultez https://aka.ms/azuremlexperimental.

Crée une étape Azure ML Synapse qui envoie et exécute un script Python.

Créez une étape de pipeline Azure ML qui exécute un travail Spark sur un pool Synapse Spark.

Héritage
azureml.pipeline.core._synapse_spark_step_base._SynapseSparkStepBase
SynapseSparkStep

Constructeur

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)

Paramètres

Nom Description
file
Obligatoire
str

Nom d’un script Synapse relatif à source_directory.

source_directory
Obligatoire
str

Dossier qui contient le script Python, l’environnement Conda et d’autres ressources utilisées lors de cette étape.

compute_target
Obligatoire

Cible de calcul à utiliser.

driver_memory
Obligatoire
str

Quantité de mémoire à utiliser pour le processus du pilote.

driver_cores
Obligatoire
int

Nombre de cœurs à utiliser pour le processus du pilote

executor_memory
Obligatoire
str

Quantité de mémoire à utiliser par processus d’exécuteur.

executor_cores
Obligatoire
int

Nombre de cœurs à utiliser pour chaque exécuteur.

num_executors
Obligatoire
int

Nombre d’exécuteurs à lancer pour cette session.

name
Obligatoire
str

Nom de l'étape. S’il n’est pas spécifié, file est utilisé.

app_name
Obligatoire
str

Nom d’application utilisé pour envoyer le travail Spark.

environment
Obligatoire

L’environnement AML sera pris en charge dans les versions ultérieures.

arguments
Obligatoire

Arguments de ligne de commande du fichier de script Synapse.

inputs
Obligatoire

Liste d’entrées.

outputs
Obligatoire

Liste de sorties.

conf
Obligatoire

Propriétés de configuration Spark.

py_files
Obligatoire

Fichiers Python à utiliser dans cette session, paramètre de l’API livy.

files
Obligatoire

Fichiers à utiliser dans cette session, paramètre de l’API livy.

allow_reuse
Obligatoire

Indique si l’étape doit réutiliser les résultats précédents lorsqu’elle est exécutée avec les mêmes paramètres.

version
Obligatoire
str

Balise de version facultative pour indiquer une modification de fonctionnalité pour l’étape.

file
Obligatoire
str

Nom d’un script Synapse relatif à source_directory.

source_directory
Obligatoire
str

Dossier qui contient le script Python, l’environnement Conda et d’autres ressources utilisées lors de cette étape.

compute_target
Obligatoire

Cible de calcul à utiliser.

driver_memory
Obligatoire
str

Quantité de mémoire à utiliser pour le processus du pilote.

driver_cores
Obligatoire
int

Nombre de cœurs à utiliser pour le processus du pilote

executor_memory
Obligatoire
str

Quantité de mémoire à utiliser par processus d’exécuteur.

executor_cores
Obligatoire
int

Nombre de cœurs à utiliser pour chaque exécuteur.

num_executors
Obligatoire
int

Nombre d’exécuteurs à lancer pour cette session.

name
Obligatoire
str

Nom de l'étape. S’il n’est pas spécifié, file est utilisé.

app_name
Obligatoire
str

Nom de l’application utilisé pour envoyer le travail Apache Spark.

environment
Obligatoire

Environnement AML qui sera exploité dans ce SynapseSparkStep.

arguments
Obligatoire

Arguments de ligne de commande du fichier de script Synapse.

inputs
Obligatoire

Liste d’entrées.

outputs
Obligatoire

Liste de sorties.

conf
Obligatoire

Propriétés de configuration Spark.

py_files
Obligatoire

Fichiers Python à utiliser dans cette session, paramètre de l’API livy.

jars
Obligatoire

Fichiers jar à utiliser dans cette session, paramètre de l’API livy.

files
Obligatoire

Fichiers à utiliser dans cette session, paramètre de l’API livy.

allow_reuse
Obligatoire

Indique si l’étape doit réutiliser les résultats précédents lorsqu’elle est exécutée avec les mêmes paramètres.

version
Obligatoire
str

Balise de version facultative pour indiquer une modification de fonctionnalité pour l’étape.

Remarques

SynapseSparkStep est une étape intégrée de base pour exécuter un travail Python Spark sur un pool Synapse Spark. Il accepte un nom de fichier principal et d’autres paramètres facultatifs, comme des arguments pour le script, la cible de calcul, les entrées et les sorties.

La meilleure pratique pour l’utilisation de SynapseSparkStep consiste à utiliser un dossier distinct pour les scripts et tous les fichiers dépendants associés à l’étape, et à spécifier ce dossier avec le paramètre source_directory. Suivre cette bonne pratique présente deux avantages. En premier lieu, cela permet de réduire la taille de l’instantané créé pour l’étape, car seuls les éléments nécessaires à l’étape sont capturés. Deuxièmement, la sortie de l’étape d’une exécution précédente peut être réutilisée si aucune modification n’est apportée au source_directory. La présence de modifications déclenche un nouveau téléchargement de l’instantané.


   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 prend uniquement en charge DatasetConsumptionConfig comme entrée et HDFSOutputDatasetConfig comme sortie.

Méthodes

create_node

Créer un nœud pour l’étape de script Synapse.

Cette méthode n’est pas destinée à être utilisée directement. Lorsqu’un pipeline est instancié avec cette étape, Azure ML transmet automatiquement les paramètres requis via cette méthode afin que l’étape puisse être ajoutée à un graphique de pipeline qui représente le flux de travail.

create_node

Créer un nœud pour l’étape de script Synapse.

Cette méthode n’est pas destinée à être utilisée directement. Lorsqu’un pipeline est instancié avec cette étape, Azure ML transmet automatiquement les paramètres requis via cette méthode afin que l’étape puisse être ajoutée à un graphique de pipeline qui représente le flux de travail.

create_node(graph, default_datastore, context)

Paramètres

Nom Description
graph
Obligatoire

Objet graphique auquel ajouter le nœud.

default_datastore
Obligatoire

Magasin de données par défaut.

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

Contexte du graphique.

Retours

Type Description

Nœud créé.