Databricks ha portato in generally availability le transazioni che scrivono su tabelle Delta gestite in Unity Catalog. In pratica, ora è possibile raggruppare più statement SQL, anche su tabelle diverse, in un’unica transazione atomica: o vanno a buon fine tutte insieme, oppure viene eseguito il rollback di tutte le modifiche.
La sintassi ricalca quella che chi arriva dal mondo dei database relazionali già conosce: si può usare BEGIN ATOMIC ... END; oppure BEGIN TRANSACTION; ... COMMIT;. Il risultato è la garanzia di consistenza dei dati quando un’operazione tocca più tabelle contemporaneamente.
Perché conta per chi lavora sul data stack
Fino a ieri, orchestrare aggiornamenti coordinati su più tabelle in un lakehouse significava scrivere logica applicativa difensiva: controlli manuali, tabelle di staging, meccanismi di compensazione per rimediare a scritture parziali andate storte. Con le transazioni atomiche native, molti di questi pattern diventano superflui. Un job di data engineering che aggiorna, poniamo, una tabella dei fatti e le relative dimensioni può ora trattare le due scritture come un blocco unico, senza il rischio di lasciare il dato in uno stato intermedio incoerente se qualcosa fallisce a metà.
C’è una precondizione da tenere presente: le transazioni richiedono i catalog commits abilitati sulle tabelle partecipanti. È il primo controllo da fare prima di riscrivere le pipeline per sfruttare la nuova funzionalità.
Va segnalato anche un limite attuale sul fronte dei formati aperti: le transazioni che scrivono su tabelle Iceberg gestite in Unity Catalog restano in Private Preview. Chi ha standardizzato su Iceberg dovrà quindi attendere, mentre per Delta la funzione è pienamente disponibile.
In sintesi
- Le transazioni su tabelle Delta gestite in Unity Catalog sono in GA: più statement SQL diventano un’unica operazione atomica con commit o rollback complessivo.
- Servono i catalog commits abilitati sulle tabelle coinvolte.
- Per le tabelle Iceberg gestite la stessa funzione è ancora in Private Preview.
Fonte: Transactions are now generally available — https://docs.databricks.com/aws/en/release-notes/product/2026/july#transactions-are-now-generally-available
Hai qualcosa da aggiungere? Unisciti alla discussione.