REORG TABLE
Van toepassing op: Databricks SQL Databricks Runtime 11.3 LTS en hoger
Herorganiseer een Delta Lake-table door bestanden te herschrijven om zacht verwijderde gegevens te verwijderen, zoals de column gegevens die zijn verwijderd door ALTER TABLE DROP COLUMN.
Syntaxis
REORG [ TABLE ] table_name { [ WHERE predicate ] APPLY ( PURGE ) |
APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )
Voor Databricks Runtime-versies vóór 15.4 TABLE
is een verplicht trefwoord.
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-table. De naam mag geen tijdelijke specificatie of optiesspecificatie bevatten.
WHERE
predikaatVoor
APPLY (PURGE)
herorganiseert u de bestanden die overeenkomen met het opgegeven predicaat partition. Alleen filters met betrekking tot partition sleutelkenmerken 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 het upgraden van de table 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));