Passa al contenuto principale
Piattaforma

Aggiornamenti automatici: le migliori funzionalità per le tue tabelle lakehouse

Le tue tabelle rimangono sempre aggiornate con le ultime funzionalità, applicate automaticamente in base alla compatibilità del carico di lavoro

di Elizabeth Bowman e Tom van Bussel

  • Auto Upgrades introduce automaticamente funzionalità best practice nelle tabelle gestite da Unity Catalog (UC), offrendo prestazioni migliori, affidabilità, interoperabilità e risparmio sui costi.
  • Auto Upgrades è la prima funzionalità nel suo genere in qualsiasi lakehouse che verifica la compatibilità dei carichi di lavoro prima di abilitare le funzioni, senza richiedere alcuno sforzo manuale.
  • Ogni funzionalità abilitata da Auto Upgrades rimane sotto il tuo controllo, configurabile per singola tabella.

Le tue Unity Catalog (UC) tabelle gestite ora migliorano da sole. Gli aggiornamenti automatici (Auto Upgrades) sono la prima funzionalità di questo tipo in qualsiasi lakehouse. Verificano automaticamente la compatibilità dei client, quindi applicano funzionalità basate sulle best practice come il Row Tracking non appena le tabelle sono pronte, senza richiedere alcuno sforzo manuale.

I formati di tabella aperti stanno innovando rapidamente, introducendo molte nuove funzionalità per le tabelle. Tuttavia, l'adozione di una nuova funzionalità di tabella ha storicamente significato identificare le tabelle idonee, verificare la compatibilità dei client ed eseguire ALTER TABLE su migliaia di tabelle. La maggior parte dei team non ha tempo per farlo, quindi non ottiene i vantaggi come migliori prestazioni, affidabilità, interoperabilità e risparmio sui costi che queste funzionalità possono offrire. Auto Upgrades colma questo divario e ti consente di mantenere il controllo: ogni modifica è reversibile per singola tabella.

Qualsiasi cosa riduca il carico mentale è una vittoria. Tenersi al passo con ogni nuova funzionalità su ogni tabella è impegnativo, quindi non vedo l'ora che Auto Upgrades gestisca la manutenzione al posto mio! —Audrey Boslego, Data Platform Engineering Manager

Come funziona Auto Upgrades

image5.png

Auto Upgrades funziona osservando come viene effettuato l'accesso alle tabelle esistenti, verificando che ogni carico di lavoro sia pronto e quindi applicando le funzionalità per tuo conto.

1. Osservazione: per ogni tabella gestita UC esistente, Auto Upgrades osserva i client che vi accedono durante una finestra di osservazione mobile.

2. Verifica: per ciascuna funzionalità, Auto Upgrades verifica che tutte le seguenti condizioni siano soddisfatte per la stessa finestra di osservazione:

  • Ogni client Databricks che ha effettuato l'accesso alla tabella durante la finestra di osservazione utilizza una versione di Databricks Runtime che supporta la funzionalità
  • La tabella stessa deve essere attiva (le tabelle completamente inattive vengono saltate)
  • (Per ora) I client esterni non devono aver effettuato l'accesso alla tabella durante la finestra di osservazione

3. Aggiornamento: una volta che una tabella è idonea, Auto Upgrades esegue ALTER TABLE tramite un processo in background leggero per applicare la funzionalità in modo sicuro.

Estensione alle nuove tabelle: una volta verificata la compatibilità di ogni tabella esistente in uno schema con una funzionalità, Auto Upgrades la imposta come predefinita per lo schema, in modo che qualsiasi nuova tabella creata in esso erediti automaticamente la funzionalità. Eventuali proprietà della tabella impostate esplicitamente al momento della creazione hanno sempre la precedenza.

In futuro, Auto Upgrades mira ad abilitare le funzionalità sulle tabelle a cui accedono client esterni rilevando se sono compatibili con una determinata funzionalità. Stiamo lavorando con la community su standard per fornire i metadati corretti per rilevare la compatibilità di questi client.

Più accurato di un aggiornamento manuale

Un attento aggiornamento manuale richiede una reale diligenza: selezionare le funzionalità giuste e confermare che siano pronte per la produzione, verificare che ogni client le supporti e garantire che ci sia un modo per eseguire il rollback. Auto Upgrades applica automaticamente la stessa diligenza a ogni tabella.

✅ Solo GA, senza regressioni significative in termini di prestazioni o costi. Una funzionalità è idonea per Auto Upgrades solo se ha raggiunto la disponibilità generale (GA) e non riduce significativamente le prestazioni né aumenta i costi. Molte funzionalità migliorano le prestazioni o riducono i costi, ma nessuna le peggiora.

✅ Una finestra di osservazione completa. Non tutti i carichi di lavoro di dati vengono eseguiti quotidianamente. I processi batch mensili, i report trimestrali e le analisi ad-hoc possono richiedere settimane per emergere. Databricks ha scelto una finestra di 100 giorni per catturare la coda lunga, offrendoci un quadro completo di come vengono effettivamente utilizzate le tabelle prima di prendere qualsiasi decisione.

✅ Verifica rigorosa della compatibilità. Non abilitiamo una funzionalità finché ogni client che vi accede non la supporta. Un singolo client non supportato è sufficiente per farci attendere, sia per le tabelle esistenti che per i valori predefiniti dello schema che regolano quelle nuove.

✅ Nessun intervento quando non è possibile verificare. Auto Upgrades agisce solo sulle tabelle che può verificare completamente. Le tabelle toccate da client esterni sono fuori dall'ambito e le tabelle inattive per più di 30 giorni vengono saltate.

✅ Le tue decisioni vengono rispettate. Ogni funzionalità abilitata da Auto Upgrades può essere disabilitata o rimossa per singola tabella in qualsiasi momento. Una volta disabilitata una funzionalità su una tabella, Auto Upgrades non la riabiliterà in seguito.

I vantaggi offerti da Auto Upgrades

Auto Upgrades porta funzionalità consolidate basate sulle best practice nelle tue tabelle gestite UC. Queste includono funzionalità che la maggior parte dei team desidera ma non ha abilitato a causa del lavoro manuale richiesto.

image4.png

Man mano che Auto Upgrades viene eseguito, le tue tabelle diventano gradualmente:

Tabelle più veloci ed efficienti in termini di costi. Le tue tabelle diventano più veloci da interrogare, più economiche da archiviare e più economiche da modificare.

  • Il Liquid Clustering automatico si applica alle nuove tabelle che lo hanno impostato come predefinito per lo schema, ottimizzando il layout dei dati in base alle query effettivamente eseguite e adattandosi all'evoluzione del carico di lavoro, eliminando la necessità di ZORDER o di chiavi di clustering manuali.
  • I Deletion Vectors contrassegnano le righe come eliminate o aggiornate invece di riscrivere interi file di dati, in modo che le eliminazioni e gli aggiornamenti vengano eseguiti più rapidamente e a costi inferiori.
  • Il Column Mapping consente di rinominare o eliminare colonne all'istante, senza riscrivere i dati.
  • Parquet V2 comprime i dati in modo più efficiente, riducendo i costi di archiviazione e velocizzando le scansioni.

Interoperabilità aperta tra i motori. Le tue tabelle diventano aperte a più formati e più motori, con una governance in Unity Catalog valida per tutti.

  • Catalog Commits consente a UC di diventare il sistema di coordinamento per le tabelle gestite, tra i vari motori. Sblocca le scritture da motori esterni nelle tabelle gestite UC, consente di applicare i criteri ABAC ai motori esterni e abilita transazioni multi-tabella e multi-istruzione.
  • Il Row Tracking aggiunge identificatori univoci a livello di riga che aprono la strada a Automatic Change Data Feed, Vector Search e Lakebase, su Iceberg e Delta. Consente inoltre l'aggiornamento incrementale delle Materialized Views invece di ricalcolare l'intera vista, riducendo significativamente i costi di aggiornamento.

Maggiore affidabilità sotto carico. Le tue tabelle rimangono stabili man mano che crescono e il volume di scrittura aumenta.

  • Checkpoint V2 mantiene i metadati delle tabelle in un formato più scalabile, riducendo gli errori di commit in situazioni con molte scritture simultanee.

Auto Upgrades continuerà a crescere per coprire più funzionalità e supportare altri tipi di tabelle gestite UC come Materialized Views e Streaming Tables.

Osservabilità completa

Ogni funzionalità aggiunta da Auto Upgrades appare nell'output DESCRIBE HISTORY della tabella e nella scheda della cronologia di Catalog Explorer, in modo da essere distinguibile dalle modifiche avviate dall'utente. Per ulteriori informazioni, consulta osservare le funzionalità abilitate.

Per una visibilità a livello di account, potrai interrogare una tabella di sistema per visualizzare ogni evento di Auto Upgrades per tabella, funzionalità e timestamp. Ad esempio, per vedere tutte le operazioni di aggiornamento automatico eseguite per tutte le funzionalità su una tabella specifica:

Per iniziare

Auto Upgrades funziona sulle tabelle gestite UC. Pertanto, il passo più importante che puoi compiere per iniziare è assicurarti che le tue tabelle vengano convertite in questo tipo di tabella.

Non sai quali delle tue tabelle sono gestite da Unity Catalog? Verifica il tipo di tabella in Catalog Explorer, o esegui DESCRIBE EXTENDED sulla tua tabella.

image3.png

Per controllare le tabelle in blocco, puoi anche utilizzare la tabella di sistema di Auto Upgrades per vedere quali funzionalità sono state abilitate su quali tabelle e in quali orari:

Se hai tabelle esterne che desideri importare, puoi convertirle con un singolo SET MANAGED, e Auto Upgrades si occuperà del resto.

Per saperne di più su come funziona Auto Upgrades, quali funzionalità abilita e come monitorarne l'attività, consulta la nostra documentazione.

Con Auto Upgrades, le tue tabelle gestite si gestiscono da sole. Man mano che Databricks rilascia nuove funzionalità, le tue tabelle continuano a migliorare, senza maratone di ALTER TABLE, audit di compatibilità o progetti di migrazione. Ottieni tabelle più veloci, affidabili e interoperabili, in modo automatico.

FAQ

In che modo Auto Upgrades garantisce che una tabella possa essere aggiornata in sicurezza?

Auto Upgrades applica solo funzionalità disponibili a livello generale che non riducono in modo significativo le prestazioni né aumentano i costi. Attende una finestra di osservazione di 100 giorni, richiede che ogni client che vi accede sia compatibile, salta le tabelle che non può verificare completamente e ti consente di disabilitare qualsiasi funzionalità per singola tabella in qualsiasi momento.

Se la mia tabella è cambiata, come posso sapere se è stato Auto Upgrades?

Ogni modifica apportata da Auto Upgrades appare nell'output di DESCRIBE HISTORY della tabella e nella scheda della cronologia di Catalog Explorer, contrassegnata in modo distinto rispetto alle tue modifiche. Per una visibilità a livello di account, la query su system.storage.table_auto_upgrade_operations_history mostrerà anche a che ora una determinata funzionalità è stata aggiunta a una tabella.

Auto Upgrades rischia di danneggiare una tabella letta dai miei strumenti esterni o OSS?

No. Le tabelle a cui accedono client esterni o OSS al momento sono fuori ambito. Auto Upgrades interviene solo quando può verificare che ogni client che interagisce con una tabella supporti la funzionalità. In futuro, estenderemo il servizio per includere anche le tabelle con accesso esterno o OSS, una volta che Auto Upgrades potrà confermare la compatibilità di tali client.

Auto Upgrades ha un costo? Aumenterà la mia fattura DBU o di storage?

Nell'attuale Gated Public Preview, Databricks non addebita costi per Auto Upgrades in sé (il lavoro di ALTER TABLE in background) e speriamo di continuare a offrirlo gratuitamente. Consulta la documentazione di Auto Upgrades per le informazioni più aggiornate.

Quanto tempo ci vorrà prima che le mie tabelle vengano aggiornate? Quando vedrò le modifiche?

Auto Upgrades utilizza una finestra di osservazione di 100 giorni per acquisire carichi di lavoro non frequenti (ad esempio, processi batch mensili, report trimestrali, analisi ad-hoc) prima di agire. Una volta verificata la compatibilità di una tabella, la funzionalità verrà applicata poco dopo tramite un processo in background. Tieni inoltre presente che quando una funzionalità viene rilasciata per la prima volta, il rilascio è graduale tra i clienti e come percentuale di tabelle, quindi potrebbero essere necessari fino a 3-5 mesi prima che raggiunga le tue tabelle con carichi di lavoro compatibili.

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

Ricevi gli ultimi articoli nella tua casella di posta

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