Condividi tramite


Aggiungere una risorsa Lakebase a un'app Databricks

Aggiungere database Lakebase come risorse di Databricks Apps per rendere persistenti i dati tra le distribuzioni. Queste risorse supportate da PostgreSQL consentono all'app di creare e gestire schemi e tabelle che mantengono lo stato.

Sono disponibili i tipi di risorse di database Lakebase seguenti:

  • Scalabilità automatica di Lakebase: organizza le risorse come progetti contenenti rami e database.
  • Il provisioning di Lakebase: organizza le risorse come istanze di database.

Entrambi i tipi usano lo stesso modello di connessione PostgreSQL e forniscono le stesse variabili di ambiente all'app.

Aggiungere una risorsa di database

Prima di aggiungere un database Lakebase come risorsa, esaminare i prerequisiti delle risorse dell'app.

Annotazioni

Non è possibile creare nuovi database con provisioning dopo il 12 marzo 2026, ma è possibile aggiungerne di esistenti come risorse dell'app. Per impostazione predefinita, vedere Scalabilità automatica.

  1. Nella sezione Risorse dell'app quando si crea o si modifica un'app fare clic su + Aggiungi database di risorse>.
  2. Scegliere un database. Per La scalabilità automatica di Lakebase selezionare un progetto, un ramo e un database. Per Lakebase Provisioned, selezionare un'istanza di database e un database all'interno di essa.
  3. Selezionare il livello di autorizzazione appropriato per l'app. Attualmente, l'unica autorizzazione disponibile è Può connettersi e creare.
  4. (Facoltativo) Specificare una chiave di risorsa personalizzata, ovvero come fare riferimento al database nella configurazione dell'app. La chiave predefinita è postgres per la scalabilità automatica di Lakebase e database per Lakebase Provisioned.

È necessario disporre CAN MANAGE dell'autorizzazione per il progetto Lakebase per aggiungerla come risorsa dell'app.

Quando si aggiunge una risorsa di database:

  • Azure Databricks crea un ruolo PostgreSQL nel database selezionato. Il nome del ruolo corrisponde all'ID client del principale di servizio. Se il ruolo esiste già, Azure Databricks lo riutilizza.
  • Azure Databricks conferisce all'entità servizio i privilegi CONNECT e CREATE nel database selezionato. Questi privilegi consentono all'app di creare schemi e tabelle nel database.
  • Per la scalabilità automatica di Lakebase, l'utente che aggiunge la risorsa deve disporre CAN MANAGE dell'autorizzazione per il progetto.

Variabili di ambiente

Quando si distribuisce un'app con una risorsa di database, Azure Databricks imposta le variabili di ambiente seguenti per la prima risorsa di database.

Se l'app usa più database PostgreSQL, queste variabili riflettono solo la prima. Usare valueFrom con la chiave di risorsa per recuperare i dettagli di connessione per il database. Vedere Usare le variabili di ambiente per accedere alle risorse.

Variabile Descrizione
PGAPPNAME Nome dell'app
PGDATABASE Nome del database
PGHOST Nome host del server PostgreSQL
PGPORT Porta per il server PostgreSQL
PGSSLMODE Modalità SSL per la connessione
PGUSER ID client e nome del ruolo dell'entità servizio

Rimuovere una risorsa di database

Se si rimuovono le risorse di database da un'app, l'app tenta di riassegnare tutti gli oggetti di proprietà dell'entità servizio all'utente rimuovendo la risorsa.

La logica che l'app utilizza dipende principalmente dalla presenza o meno di un ruolo nel database:

Autorizzazioni Ruolo nel database? Risultato
CAN MANAGE Azure Databricks riassegna tutti gli oggetti di proprietà dell'entità servizio all'utente ed elimina il ruolo dell'entità servizio.
CAN MANAGE NO Azure Databricks crea un ruolo per te, riassegna tutti gli oggetti di proprietà del ruolo dell'entità service principal a te ed elimina il ruolo dell'entità service principal.
No CAN MANAGE Non disponibile Azure Databricks rimuove la risorsa, ma non elimina il ruolo o riassegna la proprietà. Viene visualizzato un avviso nell'interfaccia utente ed è necessario pulire manualmente il ruolo e gli oggetti di proprietà in un secondo momento.

Note

Quando si aggiungono database come risorse dell'app, tenere presente quanto segue:

  • Se si revoca CONNECT e CREATE da un database e li si concede a un altro nello stesso aggiornamento, Azure Databricks aggiorna i privilegi ma non ricrea il ruolo dell'entità servizio.
  • Stato di persistenza dei database. Tutti gli schemi o le tabelle create da un'app rimangono anche dopo la ri-distribuzione o l'arresto dell'app.