DatabricksStep Classe
Crée une étape de pipeline Azure Machine Learning pour ajouter un notebook DataBricks, un script Python ou un fichier JAR en tant que nœud.
Pour obtenir un exemple d’utilisation de DatabricksStep, consultez le notebook https://aka.ms/pl-databricks.
Créez une étape Azure ML Pipeline pour ajouter un notebook DataBricks, un script Python ou JAR en tant que nœud.
Pour obtenir un exemple d’utilisation de DatabricksStep, consultez le notebook https://aka.ms/pl-databricks.
:p aram python_script_name :[Obligatoire] Nom d’un script Python relatif à source_directory
.
Si le script prend des entrées et des sorties, celles-ci sont passées au script en tant que paramètres.
Si python_script_name
est spécifié, source_directory
doit l’être également.
Spécifiez exactement une valeur de notebook_path
, python_script_path
, python_script_name
ou main_class_name
.
Si vous spécifiez un objet DataReference comme entrée avec data_reference_name=input1 et un objet PipelineData en tant que sortie avec name=output1, alors les entrées et sorties sont passées au script en tant que paramètres. Voici à quoi elles ressemblent. Vous devez analyser les arguments dans votre script pour accéder aux chemins de chaque entrée et sortie : "-input1","wasbs://test@storagename.blob.core.windows.net/test","-output1", "wasbs://test@storagename.blob.core.windows.net/b3e26de1-87a4-494d-a20f-1988d22b81a2/output1"
En outre, les paramètres suivants sont disponibles dans le script :
- AZUREML_RUN_TOKEN : jeton AML pour l’authentification auprès d’Azure Machine Learning.
- AZUREML_RUN_TOKEN_EXPIRY : délai d’expiration du jeton AML.
- AZUREML_RUN_ID : ID d’exécution Azure Machine Learning de cette exécution.
- AZUREML_ARM_SUBSCRIPTION : abonnement Azure de votre espace de travail AML.
- AZUREML_ARM_RESOURCEGROUP : groupe de ressources Azure de votre espace de travail Azure Machine Learning.
- AZUREML_ARM_WORKSPACE_NAME : nom de votre espace de travail Azure Machine Learning.
- AZUREML_ARM_PROJECT_NAME : nom de votre expérience Azure Machine Learning.
- AZUREML_SERVICE_ENDPOINT : URL de point de terminaison pour les services AML.
- AZUREML_WORKSPACE_ID : ID de votre espace de travail Azure Machine Learning.
- AZUREML_EXPERIMENT_ID : ID de votre expérience travail Azure Machine Learning.
- AZUREML_SCRIPT_DIRECTORY_NAME : chemin d’accès au répertoire dans DBFS où source_directory a été copié.
(This parameter is only populated when `python_script_name` is used. See more details below.)
Quand vous exécutez un script Python à partir de votre ordinateur local sur Databricks à l’aide des paramètres DatabricksStep source_directory
et python_script_name
, votre source_directory est copié sur le système DBFS et le chemin d’accès au répertoire sur DBFS est transmis en tant que paramètre à votre script au début de l’exécution.
Ce paramètre est étiqueté comme –AZUREML_SCRIPT_DIRECTORY_NAME. Vous devez ajouter le préfixe de la chaîne « dbfs:/ » ou « /dbfs/ » pour accéder au répertoire dans DBFS.
- Héritage
-
azureml.pipeline.core._databricks_step_base._DatabricksStepBaseDatabricksStep
Constructeur
DatabricksStep(name, inputs=None, outputs=None, existing_cluster_id=None, spark_version=None, node_type=None, instance_pool_id=None, num_workers=None, min_workers=None, max_workers=None, spark_env_variables=None, spark_conf=None, init_scripts=None, cluster_log_dbfs_path=None, notebook_path=None, notebook_params=None, python_script_path=None, python_script_params=None, main_class_name=None, jar_params=None, python_script_name=None, source_directory=None, hash_paths=None, run_name=None, timeout_seconds=None, runconfig=None, maven_libraries=None, pypi_libraries=None, egg_libraries=None, jar_libraries=None, rcran_libraries=None, compute_target=None, allow_reuse=True, version=None, permit_cluster_restart=None)
Paramètres
Nom | Description |
---|---|
name
Obligatoire
|
[Obligatoire] Nom de l’étape. |
inputs
|
Liste des connexions d’entrée pour les données consommées par cette étape. Récupérez (fetch) ce contenu dans le notebook à l’aide de dbutils.widgets.get("input_name"). Peut être DataReference ou PipelineData. DataReference représente une donnée existante sur un magasin de données. Il s’agit essentiellement s’agit d’un chemin sur un magasin de données. DatabricksStep prend en charge les magasins de données qui encapsulent DBFS, Azure Blob ou ADLS v1. PipelineData représente des données intermédiaires produites par une autre étape dans un pipeline. Valeur par défaut: None
|
outputs
|
Liste des définitions de port de sortie pour les sorties produites par cette étape. Récupérez (fetch) ce contenu dans le notebook à l’aide de dbutils.widgets.get("output_name"). Doit être PipelineData. Valeur par défaut: None
|
existing_cluster_id
|
ID de cluster d’un cluster interactif existant dans l’espace de travail Databricks. Si vous passez ce paramètre, vous ne pouvez pas passer les paramètres suivants utilisés pour créer un cluster :
Remarque : Pour créer un cluster de travail, vous avez besoin de passer les paramètres ci-dessus. Vous pouvez passer ces paramètres directement ou dans le cadre de l’objet RunConfiguration à l’aide du paramètre runconfig. Le passage direct et par le biais de RunConfiguration de ces paramètres génère une erreur. Valeur par défaut: None
|
spark_version
|
Version de spark pour le cluster d’exécution Databricks, par exemple : « 10.4.x-scala2.12 ».
Pour plus d’informations, consultez la description du paramètre Valeur par défaut: None
|
node_type
|
[Obligatoire] Types de nœuds de machine virtuelle Azure pour le cluster d’exécution Databricks, par exemple : « Standard_D3_v2 ». Spécifiez Valeur par défaut: None
|
instance_pool_id
|
[Obligatoire] ID du pool d’instances auquel le cluster doit être joint.
Spécifiez Valeur par défaut: None
|
num_workers
|
[Obligatoire] Nombre statique de Workers pour le cluster d’exécution Databricks.
Vous devez spécifier soit Valeur par défaut: None
|
min_workers
|
[Obligatoire] Nombre minimal de Workers à utiliser pour la mise à l’échelle automatique du cluster d’exécution Databricks.
Vous devez spécifier soit Valeur par défaut: None
|
max_workers
|
[Obligatoire] Nombre maximal de Workers à utiliser pour la mise à l’échelle automatique du cluster d’exécution Databricks.
Vous devez spécifier soit Valeur par défaut: None
|
spark_env_variables
|
Variables d’environnement Spark pour le cluster d’exécution Databricks.
Pour plus d’informations, consultez la description du paramètre Valeur par défaut: None
|
spark_conf
|
Configuration Spark pour le cluster d’exécution Databricks.
Pour plus d’informations, consultez la description du paramètre Valeur par défaut: None
|
init_scripts
|
[str]
Action déconseillée. Databricks a annoncé que le script init stocké dans DBFS cessera de fonctionner après le 1er décembre 2023. Pour atténuer le problème, 1) utilisez des scripts init globaux dans databricks suivant https://learn.microsoft.com/azure/databricks/init-scripts/global 2) commentez la ligne de init_scripts dans votre étape AzureML databricks. Valeur par défaut: None
|
cluster_log_dbfs_path
|
Chemins DBFS où les journaux de cluster doivent être remis. Valeur par défaut: None
|
notebook_path
|
[Obligatoire] Chemin du notebook dans l’instance Databricks. Cette classe permet de spécifier le code à exécuter sur le cluster Databricks de quatre manières.
Spécifiez exactement une valeur de Valeur par défaut: None
|
notebook_params
|
Dictionnaire des paramètres à passer au notebook. Les Valeur par défaut: None
|
python_script_path
|
[Obligatoire] Chemin du script Python dans le système DBFS.
Spécifiez exactement une valeur de Valeur par défaut: None
|
python_script_params
|
Paramètres du script Python. Valeur par défaut: None
|
main_class_name
|
[Obligatoire] Nom du point d’entrée dans un module JAR.
Spécifiez exactement une valeur de Valeur par défaut: None
|
jar_params
|
Paramètres du module JAR. Valeur par défaut: None
|
python_script_name
|
[Obligatoire] Nom d’un script Python relatif à Spécifiez exactement une valeur de Si vous spécifiez un objet DataReference comme entrée avec data_reference_name=input1 et un objet PipelineData en tant que sortie avec name=output1, alors les entrées et sorties sont passées au script en tant que paramètres. Voici à quoi elles ressemblent. Vous devez analyser les arguments dans votre script pour accéder aux chemins de chaque entrée et sortie : "-input1","wasbs://test@storagename.blob.core.windows.net/test","-output1", "wasbs://test@storagename.blob.core.windows.net/b3e26de1-87a4-494d-a20f-1988d22b81a2/output1" En outre, les paramètres suivants sont disponibles dans le script :
Quand vous exécutez un script Python à partir de votre ordinateur local sur Databricks à l’aide des paramètres DatabricksStep Valeur par défaut: None
|
source_directory
|
Dossier qui contient le script et d’autres fichiers.
Si Valeur par défaut: None
|
hash_paths
|
[str]
DÉPRÉCIÉ : n’est plus nécessaire. Liste de chemins à hacher lors de la recherche des modifications apportées au contenu de l’étape. Si aucune modification n’est détectée, le pipeline réutilise le contenu de l’étape d’une exécution précédente. Par défaut, le contenu de Valeur par défaut: None
|
run_name
|
Nom dans Databricks pour cette exécution. Valeur par défaut: None
|
timeout_seconds
|
Délai d’expiration de l’exécution Databricks. Valeur par défaut: None
|
runconfig
|
Runconfig à utiliser. Remarque : Vous pouvez passer autant de bibliothèques que vous le souhaitez en tant que dépendances à votre travail à l’aide des paramètres suivants : Valeur par défaut: None
|
maven_libraries
|
Bibliothèques Maven à utiliser pour l’exécution Databricks. Valeur par défaut: None
|
pypi_libraries
|
Bibliothèques PyPi à utiliser pour l’exécution Databricks. Valeur par défaut: None
|
egg_libraries
|
Bibliothèques Egg à utiliser pour l’exécution Databricks. Valeur par défaut: None
|
jar_libraries
|
Bibliothèques Jar à utiliser pour l’exécution Databricks. Valeur par défaut: None
|
rcran_libraries
|
Bibliothèques RCran à utiliser pour l’exécution Databricks. Valeur par défaut: None
|
compute_target
|
[Obligatoire] Calcul Azure Databricks. Avant de pouvoir utiliser DatabricksStep pour exécuter vos scripts ou notebooks sur un espace de travail Azure Databricks, vous devez ajouter l’espace de travail Azure Databricks en tant que cible de calcul à votre espace de travail Azure Machine Learning. Valeur par défaut: None
|
allow_reuse
|
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. La réutilisation est activée par défaut. Si le contenu de l’étape (scripts/dépendances) ainsi que les entrées et les paramètres restent inchangés, la sortie de l’exécution précédente de cette étape est réutilisée. Lors de la réutilisation de l’étape, au lieu de soumettre le travail au calcul, les résultats de l’exécution précédente sont immédiatement mis à la disposition des étapes suivantes. Si vous utilisez des jeux de données Azure Machine Learning comme entrées, la réutilisation est déterminée par le fait que la définition du jeu de données a changé ou pas, non par la modification éventuelle des données sous-jacentes. Valeur par défaut: True
|
version
|
Étiquette de version facultative pour indiquer une modification de fonctionnalité pour l’étape. Valeur par défaut: None
|
permit_cluster_restart
|
Si existing_cluster_id est spécifié, ce paramètre indique si le cluster peut être redémarré pour le compte de l’utilisateur. Valeur par défaut: None
|
name
Obligatoire
|
[Obligatoire] Nom de l’étape. |
inputs
Obligatoire
|
Liste des connexions d’entrée pour les données consommées à cette étape. Récupérez (fetch) ce contenu dans le notebook à l’aide de dbutils.widgets.get("input_name"). Peut être DataReference ou PipelineData. DataReference représente une donnée existante sur un magasin de données. Il s’agit essentiellement s’agit d’un chemin sur un magasin de données. DatabricksStep prend en charge les magasins de données qui encapsulent DBFS, Blob Azure ou ADLS v1. PipelineData représente des données intermédiaires produites par une autre étape dans un pipeline. |
outputs
Obligatoire
|
list[Union[OutputPortBinding, <xref:azureml.pipeline.core.pipeline_output_dataset.PipelineOutputDataset>, PipelineData]]
Liste des définitions de port de sortie pour les sorties produites par cette étape. Récupérez (fetch) ce contenu dans le notebook à l’aide de dbutils.widgets.get("output_name"). Doit être PipelineData. |
existing_cluster_id
Obligatoire
|
ID de cluster d’un cluster interactif existant dans l’espace de travail Databricks. Si vous passez ce paramètre, vous ne pouvez pas passer les paramètres suivants utilisés pour créer un cluster :
Remarque : Pour créer un cluster de travail, vous avez besoin de passer les paramètres ci-dessus. Vous pouvez passer ces paramètres directement ou dans le cadre de l’objet RunConfiguration à l’aide du paramètre runconfig. Le passage direct et par le biais de RunConfiguration de ces paramètres génère une erreur. |
spark_version
Obligatoire
|
Version de spark pour le cluster d’exécution Databricks, par exemple : « 10.4.x-scala2.12 ».
Pour plus d’informations, consultez la description du paramètre |
node_type
Obligatoire
|
[Obligatoire] Types de nœuds de machine virtuelle Azure pour le cluster d’exécution Databricks, par exemple : « Standard_D3_v2 ». Spécifiez |
instance_pool_id
Obligatoire
|
[Obligatoire] ID du pool d’instances auquel le cluster doit être joint.
Spécifiez |
num_workers
Obligatoire
|
[Obligatoire] Nombre statique de Workers pour le cluster d’exécution Databricks.
Vous devez spécifier soit Pour plus d’informations, consultez la description du paramètre |
min_workers
Obligatoire
|
[Obligatoire] Nombre minimal de Workers à utiliser pour la mise à l’échelle automatique du cluster d’exécution Databricks.
Vous devez spécifier soit Pour plus d’informations, consultez la description du paramètre |
max_workers
Obligatoire
|
[Obligatoire] Nombre maximal de Workers à utiliser pour la mise à l’échelle automatique du cluster d’exécution Databricks.
Vous devez spécifier soit Pour plus d’informations, consultez la description du paramètre |
spark_env_variables
Obligatoire
|
Variables d’environnement Spark pour le cluster d’exécution Databricks.
Pour plus d’informations, consultez la description du paramètre |
spark_conf
Obligatoire
|
Configuration Spark pour le cluster d’exécution Databricks.
Pour plus d’informations, consultez la description du paramètre |
init_scripts
Obligatoire
|
[str]
Action déconseillée. Databricks a annoncé que le script init stocké dans DBFS cessera de fonctionner après le 1er décembre 2023. Pour atténuer le problème, 1) utilisez des scripts init globaux dans databricks suivant https://learn.microsoft.com/azure/databricks/init-scripts/global 2) commentez la ligne de init_scripts dans votre étape AzureML databricks. |
cluster_log_dbfs_path
Obligatoire
|
Chemins DBFS où les journaux de cluster doivent être remis. |
notebook_path
Obligatoire
|
[Obligatoire] Chemin du notebook dans l’instance Databricks. Cette classe permet de spécifier le code à exécuter sur le cluster Databricks de quatre manières.
Spécifiez exactement une valeur de |
notebook_params
Obligatoire
|
Dictionnaire des paramètres à passer au notebook. Les |
python_script_path
Obligatoire
|
[Obligatoire] Chemin du script Python dans le système DBFS.
Spécifiez exactement une valeur de |
python_script_params
Obligatoire
|
Paramètres du script Python. |
main_class_name
Obligatoire
|
[Obligatoire] Nom du point d’entrée dans un module JAR.
Spécifiez exactement une valeur de |
jar_params
Obligatoire
|
Paramètres du module JAR. |
source_directory
Obligatoire
|
Dossier qui contient le script et d’autres fichiers.
Si |
hash_paths
Obligatoire
|
[str]
DÉPRÉCIÉ : n’est plus nécessaire. Liste de chemins à hacher lors de la recherche des modifications apportées au contenu de l’étape. Si aucune modification n’est détectée, le pipeline réutilise le contenu de l’étape d’une exécution précédente. Par défaut, le contenu de |
run_name
Obligatoire
|
Nom dans Databricks pour cette exécution. |
timeout_seconds
Obligatoire
|
Délai d’expiration de l’exécution Databricks. |
runconfig
Obligatoire
|
Runconfig à utiliser. Remarque : Vous pouvez passer autant de bibliothèques que vous le souhaitez en tant que dépendances à votre travail à l’aide des paramètres suivants : |
maven_libraries
Obligatoire
|
list[<xref:azureml.core.runconfig.MavenLibrary>]
Bibliothèques Maven à utiliser pour l’exécution Databricks.
Pour plus d’informations sur la spécification des bibliothèques Maven, consultez |
pypi_libraries
Obligatoire
|
list[<xref:azureml.core.runconfig.PyPiLibrary>]
Bibliothèques PyPi à utiliser pour l’exécution Databricks.
Pour plus d’informations sur la spécification des bibliothèques PyPi, consultez |
egg_libraries
Obligatoire
|
list[<xref:azureml.core.runconfig.EggLibrary>]
Bibliothèques Egg à utiliser pour l’exécution Databricks.
Pour plus d’informations sur la spécification des bibliothèques Egg, consultez |
jar_libraries
Obligatoire
|
list[<xref:azureml.core.runconfig.JarLibrary>]
Bibliothèques Jar à utiliser pour l’exécution Databricks.
Pour plus d’informations sur la spécification des bibliothèques Jar, consultez |
rcran_libraries
Obligatoire
|
list[<xref:azureml.core.runconfig.RCranLibrary>]
Bibliothèques RCran à utiliser pour l’exécution Databricks.
Pour plus d’informations sur la spécification des bibliothèques RCran, consultez |
compute_target
Obligatoire
|
[Obligatoire] Calcul Azure Databricks. Avant de pouvoir utiliser DatabricksStep pour exécuter vos scripts ou notebooks sur un espace de travail Azure Databricks, vous devez ajouter l’espace de travail Azure Databricks en tant que cible de calcul à votre espace de travail Azure Machine Learning. |
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. La réutilisation est activée par défaut. Si le contenu de l’étape (scripts/dépendances) ainsi que les entrées et les paramètres restent inchangés, la sortie de l’exécution précédente de cette étape est réutilisée. Lors de la réutilisation de l’étape, au lieu de soumettre le travail au calcul, les résultats de l’exécution précédente sont immédiatement mis à la disposition des étapes suivantes. Si vous utilisez des jeux de données Azure Machine Learning comme entrées, la réutilisation est déterminée par le fait que la définition du jeu de données a changé ou pas, non par la modification éventuelle des données sous-jacentes. |
version
Obligatoire
|
Étiquette de version facultative pour indiquer une modification de fonctionnalité pour l’étape. |
permit_cluster_restart
Obligatoire
|
Si existing_cluster_id est spécifié, ce paramètre indique si le cluster peut être redémarré pour le compte de l’utilisateur. |
Méthodes
create_node |
Créez un nœud à partir de l’étape Databricks et ajoutez-le au graphe spécifié. 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éez un nœud à partir de l’étape Databricks et ajoutez-le au graphe spécifié.
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éé. |