REORG TABLE
S’applique à : Databricks SQL Databricks Runtime 11.3 LTS et versions ultérieures
Réorganisez une table Delta Lake en réécrivant des fichiers pour vider les données supprimées de manière réversible, par exemple les données de colonne supprimées par ALTER TABLE DROP COLUMN.
Syntaxe
REORG TABLE table_name { [ WHERE predicate ] APPLY ( PURGE ) |
APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )
Remarque
APPLY (PURGE)
réécrit uniquement les fichiers qui contiennent des données supprimées de manière réversible.APPLY (UPGRADE)
peut réécrire tous les fichiers.REORG TABLE
est idempotent, ce qui signifie que s’il exécuté deux fois sur le même jeu de données, la deuxième exécution n’aura aucun effet.- Après avoir exécuté
APPLY (PURGE)
, les données supprimées de manière réversible peuvent toujours exister dans les anciens fichiers. Vous pouvez exécuter VACUUM pour supprimer physiquement les anciens fichiers.
Paramètres
-
Identifie une table Delta existante. Le nom ne doit pas inclure une spécification temporelle.
WHERE
prédicatPour
APPLY (PURGE)
, réorganise les fichiers qui correspondent au prédicat de partition donné. Seuls les filtres impliquant des attributs de clé de partition sont pris en charge.APPLY (PURGE)
Spécifie que l’objectif de la réécriture des fichiers est de vider les données supprimées de manière réversible. Consultez Supprimer uniquement les métadonnées pour forcer la réécriture des données.
APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))
S’applique à : Databricks SQL Databricks Runtime 14.3 et versions ultérieures
Spécifie que l’objectif de la réécriture de fichier est de mettre à niveau la table vers la version iceberg donnée.
version
doit être1
ou2
.
Exemples
> 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));