Partager via


Ajouter une ressource Lakebase à une application Databricks

Ajoutez des instances de base de données Lakebase en tant que ressources Databricks Apps pour conserver les données entre les déploiements. Ces ressources PostgreSQL sauvegardées permettent à votre application de créer et de gérer des schémas et des tables qui conservent l’état.

Importante

Les instances de base de données Lakebase sont en préversion publique. L’administrateur de votre espace de travail doit les activer avant de pouvoir les ajouter en tant que ressource d’application.

Ajouter une ressource de base de données

Avant d’ajouter une instance de base de données Lakebase en tant que ressource, passez en revue les prérequis des ressources d’application.

  1. Lorsque vous créez ou modifiez une application, accédez à l’étape Configurer .
  2. Dans la section Ressources de l’application , cliquez sur + Ajouter une ressource.
  3. Sélectionnez Base de données comme type de ressource.
  4. Choisissez une instance de base de données.
  5. Choisissez une base de données dans cette instance.
  6. Sélectionnez le niveau d’autorisation approprié pour votre application. Actuellement, la seule autorisation disponible est Can connect and create.
  7. (Facultatif) Spécifiez une clé de ressource personnalisée, c’est-à-dire la façon dont vous référencez la base de données dans la configuration de votre application. La clé par défaut est database.

Lorsque vous ajoutez une ressource de base de données :

  • Azure Databricks crée un rôle PostgreSQL dans l’instance de base de données sélectionnée. Le nom du rôle correspond à l’ID client du principal de service . Si le rôle existe déjà, Azure Databricks le réutilise.
  • Azure Databricks accorde au principal de service CONNECT et à CREATE les privilèges sur la base de données sélectionnée. Ces privilèges permettent à l’application de créer des schémas et des tables dans la base de données.

Variables d’environnement

Lorsque vous déployez une application avec une ressource de base de données, Azure Databricks définit les variables d’environnement suivantes pour la première ressource de base de données.

Si votre application utilise plusieurs bases de données, ces variables reflètent uniquement la première. Utilisez valueFrom la clé de ressource pour récupérer le nom d’hôte de la base de données. Consultez Utiliser des variables d’environnement pour accéder aux ressources.

Variable Descriptif
PGAPPNAME Nom de l’application
PGDATABASE Nom de la base de données
PGHOST Nom d’hôte du serveur PostgreSQL
PGPORT Port pour le serveur PostgreSQL
PGSSLMODE Mode SSL pour la connexion
PGUSER ID client et nom du rôle du principal de service

Supprimer une ressource de base de données

Si vous supprimez des ressources de base de données d’une application, l’application tente de réaffecter tous les objets appartenant au principal du service à l’utilisateur qui supprime la ressource.

La logique utilisée par l’application dépend principalement du fait que vous disposez d’un rôle dans l’instance de base de données :

Vos autorisations Rôle dans l’instance de base de données ? Résultat
CAN MANAGE Oui Azure Databricks réaffecte tous les objets appartenant au principal de service à vous et supprime le rôle du principal de service.
CAN MANAGE Non Azure Databricks crée un rôle pour vous, réaffecte tous les objets appartenant au rôle du principal de service et supprime le rôle du principal de service.
Non CAN MANAGE N/A Azure Databricks supprime la ressource, mais ne supprime pas le rôle ou réaffecte la propriété. Un avertissement apparaît dans l’interface utilisateur et vous devez nettoyer manuellement le rôle et les objets détenus ultérieurement.

Remarques

Tenez compte des éléments suivants lorsque vous ajoutez des bases de données en tant que ressources d’application :

  • Si vous révoquez CONNECT et CREATE d'une base de données et que vous les accordez sur une autre dans la même mise à jour, Azure Databricks met à jour les privilèges, mais ne recrée pas le rôle du service principal.
  • Les bases de données conservent l’état. Tous les schémas ou tables créés par une application restent même après avoir redéployé ou arrêté l’application.