Utilisation de Lakebase avec Databricks Apps
Databricks Apps vous permet de créer et de déployer des applications interactives directement dans votre Workspace Databricks. L'ajout de Lakebase comme Ressource donne à votre application un backend Postgres entièrement managé. Databricks crée un Service Principal pour votre application, lui accorde un rôle Postgres correspondant et injecte les détails de connexion en tant que variables d'environnement. Votre application se connecte à une base de données Postgres entièrement managée sans gérer les informations d'identification ou les chaînes de connexion.

Ce tutoriel vous guide à travers le déploiement d'une application Template connectée à une base de données Lakebase. Au final, vous disposerez d'une application opérationnelle avec des données que vous pourrez inspecter et interroger directement depuis Lakebase, et que vous pourrez éventuellement enregistrer dans Unity Catalog à côté de vos données lakehouse.
Prérequis
Avant de commencer, assurez-vous de disposer des éléments suivants :
- Accès à un Workspace Databricks avec Lakebase et compute serverless activé. Contactez l'administrateur de votre Workspace si nécessaire.
- Autorisation de créer des ressources de compute et des applications.
Étape 1 : provisionner une instance Lakebase
Un projet Lakebase est une instance Postgres gérée à laquelle votre application se connecte en tant que ressource. Les projets sont organisés en Branch, chacune représentant un environnement de base de données isolé.
Pour créer un projet Lakebase, consultez Obtenir une base de données Postgres. Lakebase crée votre projet avec une branch production et une base de données databricks_postgres.
Étape 2 : créer une application Databricks
Databricks fournit trois Templates d'applications à mise à l'échelle automatique qui démontrent l'intégration de Lakebase à l'aide d'une application de gestion des tâches : Dash, Flask et Streamlit. Pour créer une application à partir d'un Template :
- Dans votre Workspace Databricks, cliquez sur le
sélecteur d'applications et sélectionnez **Databricks Apps**.
- Cliquez sur + Créer une application .
- Sélectionnez votre template préféré dans la tab **Database**.

Étape 3 : Configurer une ressource de base de données
L'ajout de Lakebase en tant que Ressource crée un Service Principal avec les autorisations de base de données correctes et injecte vos détails de connexion en tant que variables d'environnement dans l'application. Ceci permet au Template de se connecter automatiquement à votre base de données, sans aucune chaîne de connexion dans votre code.
Dans l'étape Configurer , configurez les paramètres suivants.
- Pour les Ressources d'application , sélectionnez votre projet Lakebase, votre Branch et votre base de données. Les noms de Branch apparaissent comme des identifiants. Pour faire correspondre les identifiants aux noms, consultez la page des Branch de votre projet.
- Pour la taille de compute , sélectionnez Moyen . Ceci contrôle le compute du serveur d'applications, qui est distinct du compute de la base de données Lakebase et évolue indépendamment.

Pour en savoir plus, consultez Ajouter une ressource Lakebase à une application Databricks.
Étape 4 : Vérifier les autorisations
Chaque application Databricks s'exécute en tant que son propre Service Principal, une identité dédiée distincte de tout utilisateur individuel. Lorsque vous connectez Lakebase comme Ressource, Databricks crée un rôle Postgres correspondant pour ce Service Principal et lui octroie un accès complet à la base de données. Aucune configuration de rôle manuelle n'est requise.

Étape 5 : nommez votre application et installez-la
Lakebase utilise le nom de l'application pour générer un nom de schéma au format {app-name}_schema_{service-principal-id} (tirets supprimés de l'ID). Vous ne pouvez pas modifier le nom de l'application après la création, mais vous pouvez renommer le schéma plus tard. The Template default to lakebase-autoscaling-app.
Cliquez sur Créer une application pour créer l’application.
Étape 6 : Déployer l'application
Après avoir créé l'application, le compute start automatiquement et votre application est déployée en environ de 2 à 3 minutes sans aucune autre action. Lorsque l'état de l'application indique En cours d'exécution , cliquez sur l'URL adjacente pour ouvrir votre application.

Étape 7 : vérifier l'intégration
Ajoutez quelques tâches à votre application. Dans votre projet Lakebase, ouvrez **Tables** et sélectionnez la table des tâches sous le schéma de votre application. Le Service Principal de l'application a écrit ces lignes en utilisant les détails de connexion injectés à l'étape 3.

Pour interroger directement les données, utilisez l'éditeur SQL dans votre projet Lakebase. Étant donné que Lakebase monte en charge à zéro en cas d'inactivité, la première query après une longue pause pourrait prendre quelques secondes pour répondre. Pour les autres options de connexion, consultez Se connecter à votre base de données.
Étape 8 : Query via Unity Catalog (facultatif)
Par défaut, les données Lakebase de votre application sont directement accessibles via les connexions Postgres. L'enregistrer dans Unity Catalog permet de l'interroger en même temps que vos données lakehouse à l'aide de Databricks SQL standard. Vous pouvez ensuite joindre les tables transactionnelles de votre application aux tables Delta dans la même query.
Pour enregistrer, ouvrez l'Explorateur de catalogues et créez un nouveau catalogue. Sélectionnez **Lakebase Postgres** comme type de catalogue, choisissez **Autoscaling** et sélectionnez le même projet et la même branch que votre application. Consultez Enregistrer une base de données Lakebase dans Unity Catalog pour plus de détails.
Notez que les noms de schéma dans Unity Catalog conservent les tirets du nom de votre application. Les noms de catalogue et de schéma nécessitent tous deux l'utilisation de l'accent grave :
SELECT * FROM `your-catalog-name`.`lakebase-autoscaling-app_schema_aeb6ff9198ff4752af7dfc6d4cf570d0`.todos;