Databricks ha aggiunto, il 22 luglio 2026, la possibilità di sovrascrivere il predicato REPLACE WHERE definito su una streaming table standalone per un singolo refresh. Basta aggiungere una clausola WHERE al comando REFRESH STREAMING TABLE.
Il punto chiave: l’override vale solo per quel refresh e non modifica la definizione della tabella. È pensato per operazioni una tantum come backfill mirati e correzioni di dati, senza dover cambiare in modo permanente la logica della tabella. La funzione è supportata solo sulle streaming table standalone create con una clausola FLOW REPLACE WHERE.
Perché è utile
I REPLACE WHERE flow, diventati generally available il 7 luglio 2026, servono a rimpiazzare a ogni refresh solo le righe che corrispondono a un predicato, evitando di riprocessare l’intera storia della tabella. Il predicato però è parte della definizione: finora, per correggere una singola partizione o rifare un backfill su un intervallo diverso, si finiva per toccare la definizione stessa.
Con l’override si separa il caso eccezionale dalla regola. Un data engineer può lanciare un REFRESH con un WHERE ad hoc — per esempio per ricaricare un giorno specifico dopo una correzione a monte — lasciando intatta la logica standard che girerà ai refresh successivi. Meno rischio di dimenticare di ripristinare il predicato, meno drift tra ambiente e codice.
In sintesi
- Si può aggiungere una clausola
WHEREaREFRESH STREAMING TABLEper sovrascrivere il predicatoREPLACE WHEREdi un singolo refresh. - L’override non cambia la definizione della tabella: ideale per backfill e correzioni una tantum.
- Richiede streaming table standalone create con
FLOW REPLACE WHERE.
Fonte: Override the REPLACE WHERE predicate for a single refresh — https://docs.databricks.com/aws/en/release-notes/product/2026/july#override-the-replace-where-predicate-for-a-single-refresh
Hai qualcosa da aggiungere? Unisciti alla discussione.