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 Azure ML Pipeline qui exécute un travail Spark sur un pool spark synapse.
- Héritage
-
azureml.pipeline.core._synapse_spark_step_base._SynapseSparkStepBaseSynapseSparkStep
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
|
Nom d’un script Synapse relatif à source_directory. |
source_directory
Obligatoire
|
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
|
Quantité de mémoire à utiliser pour le processus du pilote. |
driver_cores
Obligatoire
|
Nombre de cœurs à utiliser pour le processus du pilote |
executor_memory
Obligatoire
|
Quantité de mémoire à utiliser par processus d’exécuteur. |
executor_cores
Obligatoire
|
Nombre de cœurs à utiliser pour chaque exécuteur. |
num_executors
Obligatoire
|
Nombre d’exécuteurs à lancer pour cette session. |
name
Obligatoire
|
Nom de l'étape. S’il n’est pas spécifié, |
app_name
Obligatoire
|
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
|
Balise de version facultative pour indiquer une modification de fonctionnalité pour l’étape. |
file
Obligatoire
|
Nom d’un script Synapse relatif à |
source_directory
Obligatoire
|
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
|
Quantité de mémoire à utiliser pour le processus du pilote. |
driver_cores
Obligatoire
|
Nombre de cœurs à utiliser pour le processus du pilote |
executor_memory
Obligatoire
|
Quantité de mémoire à utiliser par processus d’exécuteur. |
executor_cores
Obligatoire
|
Nombre de cœurs à utiliser pour chaque exécuteur. |
num_executors
Obligatoire
|
Nombre d’exécuteurs à lancer pour cette session. |
name
Obligatoire
|
Nom de l'étape. S’il n’est pas spécifié, |
app_name
Obligatoire
|
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
|
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éé. |