TABELLA REORG
Si applica a: Databricks SQL Databricks Runtime 11.3 LTS e versioni successive
Riorganizzare una tabella Delta Lake riscrivendo i file per eliminare i dati eliminati soft, ad esempio i dati delle colonne eliminati da ALTER TABLE DROP COLUMN.
Sintassi
REORG [ TABLE ] table_name { [ WHERE predicate ] APPLY ( PURGE ) |
APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )
Per le versioni di Databricks Runtime precedenti alla 15.4 TABLE
è una parola chiave obbligatoria.
Nota
APPLY (PURGE)
riscrive solo i file che contengono dati eliminati soft.APPLY (UPGRADE)
può riscrivere tutti i file.REORG TABLE
è idempotente, ovvero se viene eseguito due volte nello stesso set di dati, la seconda esecuzione non ha alcun effetto.- Dopo l'esecuzione
APPLY (PURGE)
di , i dati eliminati soft possono essere ancora presenti nei file precedenti. È possibile eseguire VACUUM per eliminare fisicamente i file precedenti.
Parametri
-
Identifica una tabella Delta esistente. Il nome non deve includere una specifica temporale o una specifica delle opzioni.
WHERE
predicatePer
APPLY (PURGE)
, riorganizza i file che corrispondono al predicato di partizione specificato. Sono supportati solo i filtri che coinvolgono gli attributi della chiave di partizione.APPLY (PURGE)
Specifica che lo scopo della riscrittura dei file consiste nell'eliminare i dati eliminati soft. Per forzare la riscrittura dei dati, vedere Eliminare solo i metadati.
APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))
Si applica a: Databricks SQL Databricks Runtime 14.3 e versioni successive
Specifica che lo scopo della riscrittura dei file consiste nell'aggiornare la tabella alla versione di Iceberg specificata.
version
deve essere1
o2
.
Esempi
> REORG TABLE events APPLY (PURGE);
> REORG TABLE events WHERE date >= '2022-01-01' APPLY (PURGE);
> REORG TABLE events
WHERE date >= current_timestamp() - INTERVAL '1' DAY
APPLY (PURGE);
> REORG TABLE events APPLY (UPGRADE UNIFORM(ICEBERG_COMPAT_VERSION=2));