Passa al contenuto principale

Come usare Lakebase come livello dati transazionale per le app Databricks

Database icon with connected flow chart shapes.

Pubblicato: 28 agosto 2025

Soluzioni9 min di lettura

Summary

  • Crea applicazioni full-stack su Databricks utilizzando Lakebase per l'archiviazione e Databricks Apps per l'interfaccia utente.
  • Segui un esempio reale: uno strumento per le richieste di ferie che archivia e aggiorna i dati in Lakebase.
  • Ottieni una guida passo passo: configura il database, connettilo alla tua app e crea il frontend.

Introduzione

Costruire strumenti interni o applicazioni basate sull'IA nel modo "tradizionale" getta gli sviluppatori in un labirinto di attività ripetitive e soggette a errori. Innanzitutto, devono avviare un'istanza Postgres dedicata, configurare rete, backup e monitoraggio, e poi passare ore (o giorni) a integrare quel database nel framework front-end che stanno utilizzando. Oltre a ciò, devono scrivere flussi di autenticazione personalizzati, mappare autorizzazioni granulari e mantenere questi controlli di sicurezza sincronizzati tra l'interfaccia utente, il livello API e il database. Ogni componente dell'applicazione risiede in un ambiente diverso, da un servizio cloud gestito a una VM self-hosted. Ciò costringe gli sviluppatori a destreggiarsi tra pipeline di deployment disparate, variabili d'ambiente e archivi di credenziali. Il risultato è uno stack frammentato in cui una singola modifica, come una migrazione dello schema o un nuovo ruolo, si ripercuote su più sistemi, richiedendo aggiornamenti manuali, test approfonditi e coordinamento costante. Tutto questo overhead distrae gli sviluppatori dal vero valore aggiunto: la creazione delle funzionalità principali e dell'intelligenza del prodotto.

Con Databricks Lakebase e Databricks Apps, l'intero stack applicativo risiede insieme, accanto al lakehouse. Lakebase è un database Postgres completamente gestito che offre letture e scritture a bassa latenza, integrato con le stesse tabelle del lakehouse sottostanti che alimentano i tuoi carichi di lavoro di analisi e IA. Databricks Apps fornisce un runtime serverless per l'interfaccia utente, con autenticazione integrata, autorizzazioni granulari e controlli di governance che vengono applicati automaticamente agli stessi dati che Lakebase serve. Ciò semplifica la creazione e il deployment di app che combinano stato transazionale, analisi e IA senza dover collegare più piattaforme, sincronizzare database, replicare pipeline o riconciliare policy di sicurezza tra sistemi.

Perché Lakebase + Databricks Apps

Lakebase e Databricks Apps lavorano insieme per semplificare lo sviluppo full-stack sulla piattaforma Databricks:

  • Lakebase ti offre un database Postgres completamente gestito con letture, scritture e aggiornamenti veloci, oltre a funzionalità moderne come il branching e il ripristino point-in-time.
  • Databricks Apps fornisce il runtime serverless per il frontend della tua applicazione, con identità integrata, controllo degli accessi e integrazione con Unity Catalog e altri componenti del lakehouse.

Combinando i due, puoi creare strumenti interattivi che archiviano e aggiornano lo stato in Lakebase, accedono ai dati governati nel lakehouse e servono tutto tramite un'interfaccia utente sicura e serverless, il tutto senza gestire infrastrutture separate. Nell'esempio seguente, mostreremo come creare una semplice app di approvazione richieste di ferie utilizzando questa configurazione.

Iniziare: Creare un'App Transazionale con Lakebase

Questa guida illustra come creare una semplice Databricks App che aiuta i manager a rivedere e approvare le richieste di ferie del loro team. L'app è costruita con Databricks Apps e utilizza Lakebase come database di backend per archiviare e aggiornare le richieste.

Ecco cosa copre la soluzione:

  1. Provisioning di un database Lakebase
    Configura un database OLTP Postgres serverless con pochi clic.
  2. Creazione di una Databricks App
    Costruisci un'app interattiva utilizzando un framework Python (come Streamlit o Dash) che legge e scrive su Lakebase.
  3. Configurazione di schema, tabelle e controlli di accesso
    Crea le tabelle necessarie e assegna autorizzazioni granulari all'app utilizzando l'ID client dell'App.
  4. Connessione e interazione sicura con Lakebase  
    Utilizza il Databricks SDK e SQLAlchemy per leggere e scrivere in modo sicuro su Lakebase dal codice della tua app.

La guida è progettata per iniziare rapidamente con un esempio minimo funzionante. Successivamente, puoi estenderla con configurazioni più avanzate. 

Passaggio 1: Provisioning di Lakebase

Prima di creare l'app, dovrai creare un database Lakebase. Per farlo, vai alla scheda Compute, seleziona OLTP Database, e fornisci un nome e una dimensione. Questo effettua il provisioning di un'istanza Lakebase serverless. In questo esempio, la nostra istanza di database si chiama lakebase-demo-instance.

Passaggio 2: Creare una Databricks App e Aggiungere l'Accesso al Database

Ora che abbiamo un database, creiamo la Databricks App che si connetterà ad esso. Puoi partire da un'app vuota o scegliere un modello (ad esempio, Streamlit o Flask). Dopo aver nominato la tua app, aggiungi il Database come risorsa. In questo esempio, viene selezionato il database pre-creato databricks_postgres.

L'aggiunta della risorsa Database effettua automaticamente:

  • Concede all'app i privilegi CONNECT e CREATE
  • Crea un ruolo Postgres associato all'ID client dell'app

Questo ruolo verrà utilizzato in seguito per concedere l'accesso a livello di tabella.

Passaggio 3: Creare uno Schema, una Tabella e Impostare le Autorizzazioni

Con il database provisionato e l'app connessa, puoi ora definire lo schema e la tabella che l'app utilizzerà.

1. Recuperare l'ID client dell'App

Dalla scheda Environment dell'app, copia il valore della variabile DATABRICKS_CLIENT_ID. Ti servirà per le istruzioni GRANT. 

2. Aprire l'editor SQL di Lakebase

Vai alla tua istanza Lakebase e fai clic su New Query. Questo apre l'editor SQL con l'endpoint del database già selezionato.

3. Eseguire il seguente SQL:

Si noti che, sebbene l'utilizzo dell'editor SQL sia un modo rapido ed efficace per eseguire questo processo, la gestione degli schemi di database su larga scala è gestita al meglio da strumenti dedicati che supportano il versioning, la collaborazione e l'automazione. Strumenti come Flyway e Liquibase consentono di tenere traccia delle modifiche dello schema, integrarsi con le pipeline CI/CD e garantire che la struttura del database evolva in modo sicuro insieme al codice dell'applicazione.

GUIDA

La tua guida compatta all'analitica moderna

Passaggio 4: Creare l'App

Con le autorizzazioni impostate, puoi ora creare la tua app. In questo esempio, l'app recupera le richieste di ferie da Lakebase e consente a un manager di approvarle o rifiutarle. Gli aggiornamenti vengono riscritti nella stessa tabella.

Passaggio 5: Connettersi in modo sicuro a Lakebase

Utilizza SQLAlchemy e il Databricks SDK per connettere la tua app a Lakebase con autenticazione sicura basata su token. Quando aggiungi la risorsa Lakebase, PGHOST e PGUSER vengono esposti automaticamente. L'SDK gestisce la cache dei token.

Passo 6: Leggere e Aggiornare i Dati

Le seguenti funzioni leggono e aggiornano la tabella delle richieste di ferie:

Gli snippet di codice sopra possono essere utilizzati in combinazione con framework come Streamlit, Dash e Flask per estrarre i dati da Lakebase e visualizzarli nella tua app. Per assicurarti che tutte le dipendenze necessarie siano installate, aggiungi i pacchetti richiesti al file requirements.txt della tua app. I pacchetti utilizzati negli snippet di codice sono elencati di seguito.
 

Estendere il Lakehouse con Lakebase

Lakebase aggiunge capacità transazionali al lakehouse integrando un database OLTP completamente gestito direttamente nella piattaforma. Ciò riduce la necessità di database esterni o pipeline complesse quando si creano applicazioni che richiedono sia letture che scritture.

Poiché è integrato nativamente con Databricks, inclusa la sincronizzazione dei dati, l'autenticazione delle identità e la sicurezza di rete, proprio come altri asset di dati nel lakehouse. Non è necessario un ETL personalizzato o un reverse ETL per spostare i dati tra i sistemi. Ad esempio:

  • Puoi fornire funzionalità analitiche alle applicazioni in tempo reale (disponibile oggi) utilizzando l'Online Feature Store e le tabelle sincronizzate.
  • Puoi sincronizzare dati operativi con tabelle Delta, ad esempio per l'analisi di dati storici (in anteprima privata).

Queste funzionalità semplificano il supporto di casi d'uso di livello di produzione come:

  • Aggiornamento dello stato negli agenti AI
  • Gestione di flussi di lavoro in tempo reale (ad esempio, approvazioni, routing di attività)
  • Alimentazione di dati live in sistemi di raccomandazione o motori di prezzo

Lakebase è già utilizzato in diversi settori per applicazioni tra cui raccomandazioni personalizzate, applicazioni chatbot e strumenti di gestione dei flussi di lavoro.

Prossimi Passi

Se stai già utilizzando Databricks per l'analisi e l'IA, Lakebase semplifica l'aggiunta di interattività in tempo reale alle tue applicazioni. Con il supporto per transazioni a bassa latenza, sicurezza integrata e stretta integrazione con Databricks Apps, puoi passare dal prototipo alla produzione senza lasciare la piattaforma.

Riepilogo

Lakebase fornisce un database Postgres transazionale che funziona perfettamente con Databricks Apps e offre una facile integrazione con i dati del Lakehouse. Semplifica lo sviluppo di applicazioni dati e AI full-stack eliminando la necessità di sistemi OLTP esterni o passaggi di integrazione manuali.

In questo esempio, abbiamo mostrato come:

  • Configurare un'istanza di Lakebase e accedere all'autenticazione
  • Creare un'app Databricks che legge e scrive su Lakebase
  • Utilizzare l'autenticazione sicura basata su token con una configurazione minima
  • Creare un'app di base per la gestione delle richieste di ferie utilizzando Python e SQL

Lakebase è ora in anteprima pubblica. Puoi provarlo oggi stesso direttamente dal tuo workspace Databricks. Per i dettagli sull'utilizzo e sui prezzi, consulta la documentazione di LakebaseApps.

(Questo post sul blog è stato tradotto utilizzando strumenti basati sull'intelligenza artificiale) Post originale

Non perdere mai un post di Databricks

Iscriviti al nostro blog e ricevi gli ultimi post direttamente nella tua casella di posta elettronica.