Passa al contenuto principale

Oltre il provisioning: la guida per sviluppatori all'autoscaling di Databricks Lakebase

Databricks Lakebase autoscaling eliminates the tradeoff of over or under provisioning database capacity

Pubblicato: 11 marzo 2026

Prodotto9 min di lettura

Summary

  • L'autoscaling di Databricks Lakebase elimina il tradizionale compromesso tra over provisioning e under provisioning regolando dinamicamente le Compute Unit in base al carico della CPU, all'utilizzo della memoria e alle dimensioni del working set.
  • Gli sviluppatori definiscono i guardrail per le CU minime e massime per bilanciare prestazioni e costi, con una scalabilità che avviene automaticamente e senza riavviare il database.
  • La combinazione dell'autoscaling con la funzione scale to zero riduce drasticamente la spesa per le compute inattive, pur garantendo prestazioni istantanee per carichi di lavoro di AI, sviluppo e con picchi.

Per il provisioning dei database esistono solo 2 opzioni:

  • Sovradimensionamento: imposta una compute elevata per lo scenario peggiore e paga più del dovuto per la CPU inattiva
  • Sottodimensionamento: risparmia subito impostando un compute basso, ma un picco del carico di lavoro paralizzerà il sistema in un secondo momento

Questo è il “paradosso del provisioning” e, se hai mai gestito un database di produzione, ti sei trovato di fronte a questa sfida.

Per anni, abbiamo semplicemente accettato questo come il costo da pagare per l'utilizzo dei database relazionali. Ma con l'introduzione di Databricks Lakebase, Postgres serverless integrato con Databricks, le carte in tavola sono cambiate. Siamo passati da istanze di dimensioni fisse e "sempre attive" a un modello più intelligente ed elastico: l'autoscaling.

In questo post, analizzeremo nel dettaglio come funziona l'autoscaling di Lakebase, perché è una vera manna per i moderni flussi di lavoro degli sviluppatori e come configurare le misure di protezione in modo da poterti concentrare sullo sviluppo di funzionalità invece che sulla gestione dell'infrastruttura.

Che cos'è Lakebase Autoscaling?

Lakebase Autoscaling è un modello di compute intelligente che garantisce che le dimensioni del tuo database corrispondano ai requisiti immediati della tua applicazione.

Il dimensionamento corretto per il tuo database è quello richiesto dalla tua applicazione. Il compute del database dovrebbe essere reattivo, non statico e vincolato a una taglia predefinita. Con l'autoscaling, definisci l'intervallo di risorse che desideri allocare al database. Il sistema regola quindi dinamicamente la quantità di compute disponibile per il database in base al carico attuale.

In Lakebase, questo viene gestito tramite un'astrazione chiamata Compute Unit (CU). L'autoscaling utilizza un approccio granulare in cui 1 CU alloca 2 GB di memoria. Questo consente al sistema di Scale con incrementi più piccoli e precisi, offrendoti un controllo più stretto sia sulle prestazioni che sui costi.

Specifica

Valore

Memoria per Compute Unit

2 GB

Intervallo massimo di autoscaling

32 CU

Intervallo massimo min-max di CU

8 CU

Timeout di inattività per Scale a zero

Definito dall'utente (ad es. 15 min)

Risparmio di costo stimato (scale to zero)

Oltre il 70% per carichi di lavoro di sviluppo e con picchi

Per la scale è necessario il riavvio del database

No

I meccanismi: come ragiona l'algoritmo di scalabilità

È facile pensare che la scalabilità automatica consideri solo l'utilizzo grezzo della CPU, ma Lakebase è più intelligente. Per garantire che le prestazioni della tua applicazione non peggiorino, l'algoritmo di dimensionamento automatico monitora tre pilastri tecnici fondamentali:

1. Carico della CPU

La metrica più intuitiva. Se l'applicazione inizia a eseguire join complessi o il volume di richieste simultanee aumenta, il sistema rileva il picco di utilizzo del processore e aggiunge altre CU per garantire che la latenza delle query rimanga bassa.

2. Utilizzo della memoria

I database relazionali sono noti per il loro elevato consumo di memoria. Questa metrica monitora la quantità di memoria consumata dai processi attivi e dai buffer. Con il monitoraggio della memoria, Lakebase può aumentare le risorse per prevenire problemi di Out of Memory (OOM) prima che causino un crash della sessione, garantendo una disponibilità costante anche con carichi di lavoro pesanti.

3. Dimensione del working set

Questa è forse la metrica più importante a livello professionale. Il set di lavoro è la porzione dei dati a cui si accede di frequente e che idealmente dovrebbe rimanere "calda" nella cache. Se il tuo working set diventa più grande della RAM attualmente allocata, il database deve eseguire lo "swap" dei dati su disco, un'operazione di ordini di grandezza più lenta. Lakebase stima le dimensioni del tuo working set e aumenta il tuo compute per garantire che i tuoi dati "caldi" rimangano nella memoria ad alta velocità.

Il bello di questo approccio è che avviene tutto senza riavvii. Le connessioni al database rimangono aperte e l'applicazione rimane reattiva mentre l'infrastruttura sottostante si adatta in modo fluido al traffico.

Configurazione dei guardrail: CU minime e massime

L'autoscaling non significa risorse infinite o fatture infinite. Come sviluppatore, hai bisogno di controllo sul livello minimo di prestazioni e sul tetto di spesa. Puoi farlo impostando un intervallo di scalabilità.

Definizione dei limiti di scaling

Quando configuri un'istanza di compute di Lakebase, imposterai due valori principali:

  • CU minime: Questo è il tuo livello di base. Garantisce che, anche durante i periodi di scarso traffico, il tuo database abbia una "reattività" sufficiente per rispondere alle attività amministrative o ai Job in background.
  • CU massime: questa è la tua rete di sicurezza per il budget. Impedisce che un processo fuori controllo, un bug di una query ricorsiva o un picco di traffico imprevisto aumentino i costi oltre il limite da te autorizzato.

Nota importante sui limiti: per mantenere la scalabilità prevedibile e altamente reattiva, Lakebase richiede che la differenza tra le dimensioni di compute massime e minime non superi 8 CU (ad esempio, un intervallo da 2 a 10 CU). Lakebase Autoscaling supporta intervalli fino a 32 CU. Per i carichi di lavoro che richiedono costantemente più potenza, sono disponibili anche compute di dimensioni fisse più grandi.

Imposta i limiti di compute nell'interfaccia utente di Lakebase

Scenari reali: quando l'autoscaling è la scelta vincente

1. Carichi di lavoro di agenti AI e app interattive

Se si stanno creando applicazioni basate sull'AI o agenti autonomi su Databricks, i modelli di traffico non sono quasi mai lineari. Un agente potrebbe rimanere inattivo per ore e poi trigger improvvisamente un'enorme catena di query mentre elabora un prompt complesso o acquisisce un nuovo set di dati.

L'autoscaling assicura che il database gestisca questi improvvisi picchi di attività senza richiedere il "preriscaldamento" dell'infrastruttura. Quando l'agente termina la sua attività, il database scala automaticamente verso il basso, proteggendo il budget del tuo progetto.

2. Sviluppo, test e branching

I flussi di lavoro dei database moderni in Lakebase spesso includono il branching del database, ovvero la capacità di creare ambienti isolati copy-on-write per funzionalità o PR specifiche.

La maggior parte di questi branch di sviluppo rimane inattiva per il 90% del tempo. Con la scalabilità automatica, questi ambienti rimangono al loro CU minimo quando non vengono utilizzati. Tuttavia, non appena una pipeline CI/CD start a eseguire un test di integrazione pesante o uno sviluppatore avvia una convalida manuale dei dati, l'ambiente esegue uno Scale istantaneo per fornire prestazioni a livello di produzione.

LEADER PER LA 5ª VOLTA

Gartner®: Databricks leader dei database cloud

Il vantaggio di Scale a zero

L'autoscaling gestisce le ore di attività, ma cosa succede quando finisce la giornata lavorativa?

È qui che la Scale a zero diventa lo strumento di ottimizzazione dei costi per eccellenza. Se abilitato insieme all'autoscaling, Lakebase è in grado di rilevare periodi di totale inattività. Dopo un timeout definito dall'utente, ad esempio 15 minuti senza query, l'istanza di calcolo viene sospesa completamente.

  • Costo di calcolo pari a zero: Mentre l'istanza è sospesa, il costo per il compute scende a zero.
  • Riavvio istantaneo: nel momento in cui arriva una nuova connessione o query, il database riprende istantaneamente a funzionare alla dimensione minima di scalabilità automatica da te definita.

Per gli ambienti di sviluppo o per le dashboard interne utilizzate solo durante l'orario di lavoro, questa combinazione può ridurre i costi di compute mensili del 70% o più.

Perché gli sviluppatori moderni passano a Lakebase

Il passaggio alla scalabilità automatica riguarda tanto la semplicità operativa quanto i costi.

  • Nessun ridimensionamento manuale: non devi monitorare le dashboard di Grafana e ridimensionare manualmente le istanze quando l'utilizzo della CPU raggiunge l'80%.
  • Prestazioni prevedibili: monitoraggio del working set e dell'utilizzo della memoria, Lakebase Scale prima che gli utenti notino un rallentamento.
  • Controllo granulare: Il modello da 2 GB per CU consente una regolazione molto più precisa rispetto ai provider cloud tradizionali che ti obbligano a raddoppiare le dimensioni dell'istanza e la fattura solo per ottenere un po' più di RAM.

Conclusione

L'era del dimensionamento del database basato su stime approssimative è finita. Sfruttando Databricks Lakebase Autoscaling, puoi smettere di agire come un sysadmin part-time e iniziare a concentrarti su ciò che conta: il tuo codice e i tuoi dati.

Imposta i tuoi limiti, abilita la Scale a zero per i tuoi Branch di sviluppo e lascia che l'algoritmo di Lakebase si occupi del lavoro pesante. I tuoi utenti e i tuoi stakeholder ti ringrazieranno.

Pronto per cominciare?

Approfondisci la documentazione sull'autoscaling di Lakebase per scoprire come configurare oggi stesso la tua prima istanza compute con autoscaling.

Domande frequenti (FAQ)

Cos'è l'autoscaling? L'autoscaling è un modello di compute intelligente che garantisce che le dimensioni del database corrispondano ai requisiti dell'applicazione. Si allontana dalle istanze di dimensioni fisse per passare a un modello elastico che adatta la capacità di compute disponibile per il database in base al carico attuale.

Qual è l'obiettivo principale dell'autoscaling? L'obiettivo principale è risolvere il paradosso del provisioning, in base al quale gli sviluppatori dovevano tradizionalmente scegliere tra pagare più del dovuto per la CPU inattiva o rischiare un errore di sistema durante i picchi del carico di lavoro. L'autoscaling permette al compute del database di essere reattivo e dimensionato con precisione, invece che vincolata a una dimensione statica.

Quali sono i vantaggi dell'utilizzo dell'autoscaling? I vantaggi includono la semplicità operativa, eliminando la necessità di un ridimensionamento manuale, e prestazioni prevedibili grazie al monitoraggio proattivo della memoria e dei working set. Inoltre, il modello granulare da 2 GB per CU offre una regolazione più precisa dei costi e delle prestazioni rispetto ai provider che richiedono il raddoppio delle dimensioni dell'istanza per avere più RAM.

In che modo il dimensionamento automatico gestisce la capacità in modo dinamico? La capacità viene gestita tramite un'astrazione granulare chiamata Compute Unit, dove un'unità alloca 2 GB di memoria. Il sistema aggiunge o rimuove queste unità senza richiedere il riavvio del database, garantendo che le connessioni rimangano aperte mentre l'infrastruttura sottostante si adatta.

In che modo l'autoscaling migliora la Scale del cloud? L'autoscaling migliora la Scale consentendo ai database di gestire picchi di attività improvvisi senza richiedere un pre-riscaldamento manuale. Questa elasticità garantisce che l'infrastruttura possa aumentare le proprie prestazioni per attività intensive e ridurle automaticamente al termine per non incidere sul budget.

Quali metriche monitora Lakebase Autoscaling? L'algoritmo monitora tre pilastri tecnici chiave: il carico della CPU per mantenere bassa la latenza delle query, l'utilizzo della memoria per prevenire problemi di esaurimento della memoria (out of memory) e le dimensioni del working set per garantire che i dati a cui si accede di frequente rimangano nella cache.

Cos'è una Compute Unit (CU) in Lakebase? Una Compute Unit è un'astrazione granulare delle risorse utilizzata in Lakebase per definire l'intervallo di scalabilità. Ogni singola unità fornisce esattamente 2 GB di memoria.

Qual è l'intervallo massimo di CU supportato dall'autoscaling di Lakebase? L'autoscaling di Lakebase supporta intervalli fino a un massimo di 32 CU. All'interno di tale intervallo, il sistema richiede che la differenza tra il valore minimo e massimo di CU definito dall'utente non superi le 8 CU.

Come funziona Scale to zero in Lakebase? Scale to zero rileva i periodi di totale inattività e sospende completamente l'istanza di compute dopo un timeout definito dall'utente. Quando arriva una nuova connessione o query, il database riprende a funzionare con la dimensione minima di autoscaling definita.

Qual è la differenza tra autoscaling e scale to zero in Lakebase? L'autoscaling gestisce le ore di attività regolando le dimensioni di compute entro un intervallo predefinito per rispondere alla domanda variabile. La funzione scale to zero gestisce i periodi di inattività sospendendo completamente l'istanza per eliminare i costi di compute quando non ci sono query.

Posso usare Lakebase Autoscaling con il database branching? L'autoscaling è molto vantaggioso per il database branching perché consente agli ambienti isolati per le funzionalità di rimanere a un CU minimo quando sono inattivi. Questi ambienti con branch quindi si espandono per fornire prestazioni di livello produttivo ogni volta che uno sviluppatore avvia la convalida o una pipeline CI/CD esegue dei test.

L'autoscaling richiede il riavvio del database? No. Le connessioni al database rimangono attive e aperte mentre Lakebase scala fluidamente le risorse sottostanti.

Qual è il rapporto RAM/CU in Lakebase? Ogni Compute Unit (CU) fornisce esattamente 2 GB di memoria.

Quanto posso risparmiare utilizzando la Scale a zero? Per i carichi di lavoro attivi solo in determinate parti della giornata, come i dev Branch o le dashboard interne, gli utenti spesso riscontrano riduzioni dei costi di compute del 70% o più.

 

(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.