Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiungere istanze di 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.
Importante
Le istanze del database Lakebase sono in anteprima pubblica. L'amministratore dell'area di lavoro deve abilitarli prima di poterli aggiungere come risorsa dell'app.
Aggiungere una risorsa di database
Prima di aggiungere un'istanza del database Lakebase come risorsa, esaminare i prerequisiti delle risorse dell'app.
- Quando si crea o si modifica un'app, passare al passaggio Configura .
- Nella sezione Risorse dell'app fare clic su + Aggiungi risorsa.
- Selezionare Database come tipo di risorsa.
- Scegliere un'istanza del database.
- Scegliere un database all'interno di tale istanza.
- Selezionare il livello di autorizzazione appropriato per l'app. Attualmente, l'unica autorizzazione disponibile è Può connettersi e creare.
- (Facoltativo) Specificare una chiave di risorsa personalizzata, ovvero come fare riferimento al database nella configurazione dell'app. La chiave predefinita è
database.
Quando si aggiunge una risorsa di database:
- Azure Databricks crea un ruolo PostgreSQL nell'istanza del database selezionata. Il nome del ruolo corrisponde all'ID client del principale di servizio. Se il ruolo esiste già, Azure Databricks lo riutilizza.
- Azure Databricks assegna i privilegi al principale del servizio
CONNECTeCREATEnel database selezionato. Questi privilegi consentono all'app di creare schemi e tabelle nel database.
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, queste variabili riflettono solo la prima. Usare valueFrom con la chiave di risorsa per recuperare il nome host del 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 usata dall'app dipende principalmente dalla presenza di un ruolo nell'istanza del database:
| Autorizzazioni | Ruolo nell'istanza del database? | Risultato |
|---|---|---|
CAN MANAGE |
Sì | 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 del principal del servizio a te e elimina il ruolo del principal del servizio. |
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
CONNECTeCREATEda 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.