Tutoriel : Développer une application Databricks localement avec Databricks Connect
Databricks Apps vous permet de créer des applications de données et d'IA sécurisées sur la plateforme Databricks que vous pouvez facilement partager avec les utilisateurs. En développant une application Databricks avec PySpark et Databricks Connect, vous pouvez exploiter la puissance d'Apache Spark dans votre application. Similaire à un pilote JDBC, Databricks Connect peut être intégré à n'importe quelle application pour interagir avec Databricks. De plus, Databricks Connect offre toute l'expressivité de Python via PySpark, vous permettant d'exécuter toutes les Transformations de données avec Spark sur le compute Databricks.
Pour plus d'information sur les applications et Databricks Connect, consultez Databricks Apps et Databricks Connect.
Ce tutoriel explique comment créer une application Databricks simple dans le Workspace Databricks, puis la développer localement à l'aide de Databricks Connect. L'application s'exécute sur un compute serverless avec Python 3.11 et Databricks Connect 15.4.*. Pour utiliser une autre version, les versions de Python et de Databricks Connect doivent être compatibles. Consultez les versions de Databricks Connect.
Pour une application d'exemple plus avancée qui utilise Databricks Connect, consultez le repository GitHub Databricks Demos.
Exigences
- Votre Workspace Databricks et votre environnement de développement local doivent satisfaire aux exigences des Databricks Apps. Consultez Configurez votre Workspace Databricks Apps et votre environnement de développement.
- Votre Workspace Databricks doit avoir Unity Catalog activé et le compute Serverless disponible (activé par default dans les Workspaces avec Unity Catalog).
- Databricks CLI version 0.250.0 ou ultérieure est installée sur votre machine locale. Pour vérifier la version installée de la Databricks CLI, exécutez la commande
databricks -v. Pour installer la Databricks CLI, consultez Installer ou mettre à jour la Databricks CLI. - Python 3.11 est installé sur votre machine locale.
Étape 1 : Configurez l'authentification et le compute serverless
Ce tutoriel utilise le compute serverless et l'authentification OAuth user-to-machine (U2M) de Databricks ainsi qu'un profil de configuration Databricks pour l'authentification à votre workspace Databricks.
Utilisez la Databricks CLI pour initier la connexion OAuth en exécutant la commande suivante. Utilisez DEFAULT comme nom de profil et suivez les instructions à l'écran pour vous connecter à votre Databricks workspace.
databricks auth login --configure-serverless --host <workspace-url>
Étape 2 : Créez une application
Créez maintenant une application Databricks dans le workspace.
-
Dans votre workspace Databricks, cliquez sur + Nouveau > Application dans la barre latérale gauche.
-
Sous Installer à partir d'un Template , accédez à l'tab Dash .
-
Choisissez le Template **Hello world**.
-
Nommez l'application dash-hello-world et cliquez sur Installer .
Ceci crée une nouvelle application basée sur le Template sélectionné, la déploie dans votre Workspace et la start. Pour afficher l'application, cliquez sur l'URL Exécution en haut de la page Vue d'ensemble :

Étape 3 : Copiez l'application sur votre machine locale
Ensuite, download le code source de l'application vers votre machine locale.
-
Copiez la première commande sous **Synchroniser les fichiers** sur la page de l'application.
-
Dans un terminal local, créez un répertoire
dash-hello-world, puis exécutez la commande copiée, par exemple :Bashmkdir dash-hello-world
cd dash-hello-world
databricks workspace export-dir /Workspace/Users/someone@example.com/databricks_apps/dash-hello-world_2025_12_01-18_38/dash-hello-world-app .
La commande copie deux nouveaux fichiers dans le répertoire nommé app.py et app.yaml. app.yaml définit la configuration de l’application, y compris son point d’entrée et ses autorisations. app.py contient le code qui implémente la fonctionnalité et l’interface utilisateur de l’application.
Étape 4 : Ajouter Databricks Connect
Créez un environnement virtuel Python pour votre application Databricks et ajoutez databricks-connect comme exigence.
-
Créez un environnement virtuel nommé
.myvenvà la racine du dossier du projet et activez-le :Bashpython3.11 -m venv .myvenv
source .myvenv/bin/activate -
Mettez à jour les dépendances de votre application dans le
requirements.txtde votre projet. Ajouterdatabricks-connect==15.4.*:dash== 3.3.*
dash-bootstrap-components==2.0.*
pandas
plotly==6.5.*
databricks-sql-connector
databricks-sdk
python-dotenv
dash-ag-grid
databricks-connect==15.4.* -
Installez les dépendances dans
requirements.txtdans votre environnement virtuel :Bashpip install -r requirements.txt
Étape 5 : Modifier l'application et tester localement
Personnalisez et développez votre application localement.
-
Mettre à jour
app.pypour lire les données de Databricks à l'aide de Databricks Connect et exploiter Apache Spark pour effectuer des transformations de données. Également, ajouter du code pour rendre les données interactives, ajouter une option de style et autoriser l'upload de données.Python# app.py
import pandas as pd
from dash import Dash, dcc, html
import plotly.express as px
import dash_bootstrap_components as dbc
from databricks.connect.session import DatabricksSession
from pyspark.sql.functions import col
spark = DatabricksSession.builder.serverless().getOrCreate()
# Data transformations with Spark in Python
df = (spark.read.table("samples.nyctaxi.trips")
.select('trip_distance', 'fare_amount')
.filter(col('trip_distance') < 10)
.limit(1000))
chart_data = df.toPandas()
# Initialize the Dash app with Bootstrap styling
dash_app = Dash(__name__, external_stylesheets=[dbc.themes.BOOTSTRAP])
# Define the app layout
dash_app.layout = dbc.Container([
dbc.Row([dbc.Col(html.H1('Trip cost by distance'), width=12)]),
dcc.Graph(
id='fare-scatter',
figure=px.scatter(chart_data, x='trip_distance', y='fare_amount',
labels={'trip_distance': 'Trip distance (miles)', 'fare_amount': 'Fare amount (USD)'},
template='simple_white'),
style={'height': '500px', 'width': '1000px'}
)
], fluid=True)
if __name__ == '__main__':
dash_app.run(debug=True) -
Exécutez et testez votre application localement. Vous pouvez utiliser Python ou la CLI Databricks pour l’exécuter.
-
Exécutez l’application Python.
Bashpython app.pyAccédez à
http://127.0.0.1:8050/dans une fenêtre de navigateur pour afficher l'application. -
Ou utilisez la commande
databricks apps run-localpour exécuter et déboguer l'application. Cette commande installe toutes les dépendances et prépare l'environnement virtuel, puis start l'application et le débogueur sur le port 5678.Bashdatabricks apps run-local --prepare-environment --debugAccédez à http://localhost:8001 dans une fenêtre de navigateur pour visualiser l'application.
Pour définir des points d'arrêt dans Visual Studio Code, installez l'extension de débogueur Python, puis allez dans **Run** > **Start Debugging** > **Remote Attach**.
-

Étape 6 : Redéployez l'application.
Enfin, upload votre application modifiée localement vers votre Workspace Databricks et déployez-la sur compute.
Pour éviter d'upload l'intégralité de votre environnement virtuel Python vers Databricks, votre projet doit comporter un fichier .gitignore soit à la racine avec .myvenv, soit dans le dossier .myvenv qui exclut ces fichiers.
-
Dans votre workspace Databricks, cliquez sur **Compute**, puis sur **Apps**. Sélectionnez l'application
dash-hello-world. -
Sous Synchroniser les fichiers , copiez la commande sous Synchroniser les modifications futures dans Databricks et exécutez-la depuis le dossier de votre projet d'application local :
Bashdatabricks sync --watch . /Workspace/Users/someone@example.com/databricks_apps/dash-hello-world_2025_12_05-21_35/dash-hello-world-app -
Pour déployer l'application modifiée sur le compute, copiez la commande sous **Déployer sur Databricks Apps** sur la page de l'application et exécutez-la depuis votre dossier de projet d'application local :
Bashdatabricks apps deploy dash-hello-world --source-code-path /Workspace/Users/someone@example.com/databricks_apps/dash-hello-world_2025_12_05-21_35/dash-hello-world-app
Si le déploiement est réussi, la commande génère un JSON de confirmation :
{
"create_time": "2025-12-06T01:30:16Z",
"creator": "someone@example.com",
"deployment_artifacts": {
"source_code_path": "/Workspace/Users/1234abcd-5678-90ab-cdef-123456abcdef/src/abcd1234efgh5678ijkl9012mnop3456"
},
"deployment_id": "abcd1234efgh5678ijkl9012mnop3456",
"mode": "SNAPSHOT",
"source_code_path": "/Workspace/Users/someone@example.com/databricks_apps/dash-hello-world_2025_12_05-21_35/dash-hello-world-app",
"status": {
"message": "App started successfully",s
"state": "SUCCEEDED"
},
"update_time": "2025-12-06T01:30:20Z"
}
Ressources supplémentaires
- Configurez l'autorisation pour gérer qui peut accéder et modifier votre application.
- Intégrez votre application avec les fonctionnalités de la plateforme Databricks telles que les secrets Databricks ou Databricks SQL.
- Partagez votre application avec d'autres utilisateurs dans votre Workspace ou au sein de votre organisation.
- Explorez les templates d'application et expérimentez avec différents frameworks et capacités.