Partager via


Transformer des données en exécutant une activité de Python dans Azure Databricks

S'APPLIQUE À : Azure Data Factory Azure Synapse Analytics

Conseil

Data Factory dans Microsoft Fabric est la prochaine génération de Azure Data Factory, avec une architecture plus simple, une IA intégrée et de nouvelles fonctionnalités. Si vous débutez avec l'intégration des données, commencez par Fabric Data Factory. Les charges de travail ADF existantes peuvent être mises à niveau vers Fabric pour accéder à de nouvelles fonctionnalités dans la science des données, l’analytique en temps réel et la création de rapports.

L’activité Azure Databricks Python dans un pipeline exécute un fichier Python dans votre cluster Azure Databricks. Cet article s'appuie sur l'article Activités de transformation des données qui présente une vue d'ensemble de la transformation des données et les activités de transformation prises en charge. Azure Databricks est une plateforme managée pour l’exécution d’Apache Spark.

Pour une présentation de onze minutes et la démonstration de cette fonctionnalité, regardez la vidéo suivante :

Ajouter une activité de Python pour Azure Databricks à un pipeline avec interface utilisateur

Pour utiliser une activité de Python pour Azure Databricks dans un pipeline, procédez comme suit :

  1. Recherchez Python dans le volet Activités du pipeline, puis faites glisser une activité Python vers le canevas du pipeline.

  2. Sélectionnez la nouvelle activité Python sur le canevas si elle n’est pas déjà sélectionnée.

  3. Sélectionnez l’onglet Azure Databricks pour sélectionner ou créer un service lié Azure Databricks qui exécutera l’activité Python.

    Shows l’interface utilisateur d’une activité Python.

  4. Sélectionnez l’onglet Settings et spécifiez le chemin d’accès dans Azure Databricks à un fichier Python à exécuter, des paramètres facultatifs à passer et toutes les bibliothèques supplémentaires à installer sur le cluster pour exécuter le travail.

    Shows l’interface utilisateur de l’onglet Paramètres d’une activité Python.

Définition d’activité Databricks Python

Voici l’exemple de définition JSON d’une activité Databricks Python :

{
    "activity": {
        "name": "MyActivity",
        "description": "MyActivity description",
        "type": "DatabricksSparkPython",
        "linkedServiceName": {
            "referenceName": "MyDatabricksLinkedService",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "pythonFile": "dbfs:/docs/pi.py",
            "parameters": [
                "10"
            ],
            "libraries": [
                {
                    "pypi": {
                        "package": "tensorflow"
                    }
                }
            ]
        }
    }
}

Propriétés de l’activité Databricks Python

Le tableau suivant décrit les propriétés JSON utilisées dans la définition JSON :

Propriété Description Obligatoire
nom Nom de l'activité dans le pipeline. Oui
description Texte décrivant l’activité. Non
type Pour Databricks Python Activity, le type d’activité est DatabricksSparkPython. Oui
linkedServiceName Nom du service lié Databricks sur lequel l’activité Python s’exécute. Pour en savoir plus sur ce service lié, consultez l’article Services liés de calcul. Oui
pythonFile URI du fichier Python à exécuter. Seuls les chemins DBFS sont pris en charge. Oui
paramètres Paramètres de ligne de commande qui seront transmis au fichier Python. C’est un tableau de chaînes. Non
bibliothèques Liste de bibliothèques à installer sur le cluster qui exécute le travail. Il peut s’agir d’un tableau de <chaînes ou objets>. Non

Bibliothèques prises en charge pour les activités Databricks

Dans la définition d’activité Databricks ci-dessus, vous précisez ces types de bibliothèques : jar, egg, maven, pypi, cran.

{
    "libraries": [
        {
            "jar": "dbfs:/mnt/libraries/library.jar"
        },
        {
            "egg": "dbfs:/mnt/libraries/library.egg"
        },
        {
            "maven": {
                "coordinates": "org.jsoup:jsoup:1.7.2",
                "exclusions": [ "slf4j:slf4j" ]
            }
        },
        {
            "pypi": {
                "package": "simplejson",
                "repo": "http://my-pypi-mirror.com"
            }
        },
        {
            "cran": {
                "package": "ada",
                "repo": "https://cran.us.r-project.org"
            }
        }
    ]
}

Pour plus d’informations, consultez la documentation Databricks pour les types de bibliothèques.

Comment charger une bibliothèque dans Databricks

Vous pouvez utiliser l’interface utilisateur de l’espace de travail :

  1. Utiliser l’interface utilisateur de l’espace de travail Databricks

  2. Pour obtenir le chemin dbfs de la bibliothèque ajoutée par le biais de l’interface utilisateur, vous pouvez utiliser l’interface CLI de Databricks.

    En général, les bibliothèques Jar sont stockées sous dbfs:/FileStore/jars lors de l’utilisation de l’interface utilisateur. Vous pouvez toutes les répertorier à l'aide de l'interface CLI : databricks fs ls dbfs:/FileStore/job-jars

Vous pouvez utiliser l’interface CLI de Databricks :

  1. Suivez Copier la bibliothèque avec l’interface CLI de Databricks.

  2. Utilisez l’interface CLI de Databricks (étapes d’installation).

    Par exemple, pour copier un fichier JAR sur dbfs : dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar