REORG-TABEL
Van toepassing op: Databricks SQL Databricks Runtime 11.3 LTS en hoger
U kunt een Delta Lake-tabel opnieuw ordenen door bestanden te herschrijven om voorlopig verwijderde gegevens te verwijderen, zoals de kolomgegevens die zijn verwijderd door ALTER TABLE DROP COLUMN.
Syntaxis
REORG TABLE table_name { [ WHERE predicate ] APPLY ( PURGE ) |
APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )
Notitie
APPLY (PURGE)
alleen bestanden die voorlopig verwijderde gegevens bevatten, worden herschreven.APPLY (UPGRADE)
kan alle bestanden herschrijven.REORG TABLE
is idempotent, wat betekent dat als deze twee keer op dezelfde gegevensset wordt uitgevoerd, de tweede uitvoering geen effect heeft.- Nadat de gegevens zijn uitgevoerd
APPLY (PURGE)
, kunnen de voorlopig verwijderde gegevens nog steeds voorkomen in de oude bestanden. U kunt VACUUM uitvoeren om de oude bestanden fysiek te verwijderen.
Parameters
-
Identificeert een bestaande Delta-tabel. De naam mag geen tijdelijke specificatie of optiesspecificatie bevatten.
WHERE
predikaatVoor
APPLY (PURGE)
het opnieuw ordenen van de bestanden die overeenkomen met het opgegeven partitiepredicaat. Alleen filters met betrekking tot partitiesleutelkenmerken worden ondersteund.APPLY (PURGE)
Hiermee geeft u op dat het doel van het herschrijven van bestanden is het opschonen van voorlopig verwijderde gegevens. Zie Alleen verwijderen van metagegevens opschonen om het herschrijven van gegevens af te dwingen.
APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))
Van toepassing op: Databricks SQL Databricks Runtime 14.3 en hoger
Hiermee geeft u op dat het doel van het herschrijven van bestanden is om de tabel te upgraden naar de opgegeven Iceberg-versie.
version
moet een1
van beide zijn of2
.
Voorbeelden
> 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));