Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Remarque
Cet article s’applique à Databricks Connect 15.4 LTS et versions ultérieures.
Cet article explique comment créer un projet dans votre IDE, configurer votre environnement virtuel, installer Databricks Connect pour Python et exécuter du code sur le calcul serverless dans votre espace de travail Databricks.
Ce tutoriel utilise Python 3.12 et Databricks Connect 16.4 LTS. Pour utiliser d’autres versions de Python de Databricks Connect, elles doivent être compatibles. Consultez la matrice de prise en charge des versions.
Spécifications
Pour suivre ce tutoriel, les exigences suivantes doivent être remplies :
- Votre espace de travail, votre environnement local et votre calcul répondent aux exigences de Databricks Connect pour Python. Consultez les exigences d’utilisation de Databricks Connect.
- Le calcul serverless est activé dans votre espace de travail. Voir Se connecter à un calcul sans serveur.
- Python 3.12 est installé.
- Vous disposez d’un IDE installé, tel que Visual Studio Code.
- L’interface CLI Databricks est installée sur votre ordinateur local. Consultez Installer ou mettre à jour l’interface CLI Databricks.
Étape 1 : Configurer l’authentification Databricks
Ce tutoriel utilise l’authentification utilisateur à machine (U2M) Databricks et un profil de configuration Databricks pour l’authentification auprès de votre espace de travail Databricks.
Utilisez l’interface CLI Databricks pour lancer la gestion des jetons OAuth localement en exécutant la commande suivante pour chaque espace de travail cible. Dans la commande suivante, remplacez
<workspace-url>par l’URL de votre instance d’espace de travail Databricks, par exemplehttps://dbc-a1b2345c-d6e7.cloud.databricks.com.databricks auth login --host <workspace-url>L’interface CLI Databricks vous invite à enregistrer les informations que vous avez entrées en tant que profil de configuration Databricks. Appuyez sur
Enterpour accepter le nom de profil suggéré, ou entrez le nom d’un profil nouveau ou existant. Databricks recommande d’utiliserDEFAULTcomme nom de profil.Dans votre navigateur web, suivez les instructions à l’écran pour vous connecter à votre espace de travail Databricks.
Étape 2 : Créer un environnement virtuel Python
Créez votre dossier de projet et ouvrez-le dans votre IDE. Par exemple, dans le menu principal de Visual Studio Code, cliquez sur Ouvrir ledossier Ouvrirun >>
Ouvrez une fenêtre de terminal à la racine du dossier du projet. Par exemple, dans le menu principal de Visual Studio Code, cliquez sur Afficher> leterminal.
Créez un environnement virtuel pour le projet appelé
venvà la racine du dossier du projet en exécutant la commande suivante dans le terminal :python3.12 -m venv .venvActivez votre environnement virtuel :
# Linux/Mac source .venv/bin/activate# Windows .venv\Scripts\activate
Étape 3 : Installer Databricks Connect
Installez Databricks Connect. Pour plus d’informations sur la dernière version publiée de Databricks Connect 16.4, consultez Databricks Connect pour Databricks Runtime 16.4.
pip install "databricks-connect==16.4.*"
Étape 4 : Ajouter du code et exécuter
Ajouter un nouveau fichier
main.pyPython à votre projetEntrez le code suivant dans le fichier, en remplaçant l’espace réservé
<profile-name>par le nom de votre profil de configuration à l’étape 1, puis enregistrez le fichier. Le nom du profil de configuration par défaut estDEFAULT.from databricks.connect import DatabricksSession spark = DatabricksSession.builder.serverless().profile("<profile-name>").getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)Exécutez le code à l’aide de la commande suivante :
python3 main.pyCinq lignes de la table sont retournées :
+--------------------+---------------------+-------------+-----------+---------+-----------+ |tpep_pickup_datetime|tpep_dropoff_datetime|trip_distance|fare_amount|pickup_zip|dropoff_zip| +--------------------+---------------------+-------------+-----------+----------+-----------+ | 2016-02-16 22:40:45| 2016-02-16 22:59:25| 5.35| 18.5| 10003| 11238| | 2016-02-05 16:06:44| 2016-02-05 16:26:03| 6.5| 21.5| 10282| 10001| | 2016-02-08 07:39:25| 2016-02-08 07:44:14| 0.9| 5.5| 10119| 10003| | 2016-02-29 22:25:33| 2016-02-29 22:38:09| 3.5| 13.5| 10001| 11222| | 2016-02-03 17:21:02| 2016-02-03 17:23:24| 0.3| 3.5| 10028| 10028| +--------------------+---------------------+-------------+-----------+----------+-----------+
Vous avez exécuté avec succès votre première requête sur le calcul serverless Databricks à l’aide de Databricks Connect à partir de votre IDE.
Étape 5 : Préparer votre production de code
Pour les scénarios de production, il est important d’éviter d’utiliser des spécifications de calcul dans le générateur de sessions Spark. Par exemple, si vous déployez votre code sur un cluster classique : Standard ou Dedicated à l’aide de l’API .serverless() dans votre générateur de sessions Spark, une nouvelle session Spark serverless est créée à l’aide du cluster classique en tant que client.
Pour rendre votre code flexible et prêt pour la production, la session Spark ne doit contenir aucun paramètre.
spark = DatabricksSession.builder.getOrCreate()
Toutefois, lorsque ce code est exécuté sur Databricks, la session Spark globale par défaut du calcul Databricks est utilisée.
Pour activer le calcul serverless dans votre IDE, utilisez le profil de configuration DEFAULT, qui est sélectionné par le DatabricksSession.builder moment où aucun paramètre n’est spécifié :
Créez un profil de configuration nommé
DEFAULTà l’aide des instructions de l’étape 1.Utilisez un éditeur de texte pour ouvrir le
.databrickscfgfichier, qui se trouve dans :Dossier d’accueil de votre
$HOMEutilisateur sur Unix, Linux ou macOS :~/.databrickscfgouVotre
%USERPROFILE%dossier (accueil de l’utilisateur) sur Windows. Par exemple, pour macOS :nano ~/.databrickscfg
Ajouter
serverless_compute_id = autoauDEFAULTprofil :[DEFAULT] host = https://my-workspace.cloud.databricks.com auth_type = databricks-cli serverless_compute_id = autoEnregistrez les modifications et quittez votre éditeur.
Modifiez votre code pour utiliser une session Spark générale et exécutez-la :
from databricks.connect import DatabricksSession spark = DatabricksSession.builder.getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)python3 main.py
Vous avez exécuté votre code prêt pour la production sur le calcul serverless Databricks à l’aide de Databricks Connect à partir de votre IDE à l’aide du profil de configuration DEFAULT.
Conseil / Astuce
Vous pouvez également utiliser des variables d’environnement pour définir la connexion à un calcul Databricks spécifique :
- Serverless :
DATABRICKS_SERVERLESS_COMPUTE_ID=auto - Classique:
DATABRICKS_CLUSTER_ID=<your_cluster_id>