REORG TABLE

A következőkre vonatkozik:jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime 11.3 LTS és újabb

Átrendezhet egy Delta Lake-táblát úgy, hogy újraírja a fájlokat a helyreállíthatóan törölt adatok, például az ALTER TABLE DROP COLUMN által elvetett oszlopadatok törléséhez.

Szintaxis

REORG TABLE table_name { [ WHERE predicate ] APPLY ( PURGE ) |
                         APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )

Feljegyzés

  • APPLY (PURGE) csak a helyreállíthatóan törölt adatokat tartalmazó fájlokat írja át.
  • APPLY (UPGRADE) átírhatja az összes fájlt.
  • REORG TABLEidempotens, ami azt jelenti, hogy ha kétszer fut ugyanazon az adatkészleten, a második futtatásnak nincs hatása.
  • A futtatás APPLY (PURGE)után a helyreállíthatóan törölt adatok továbbra is létezhetnek a régi fájlokban. Futtassa a VACUUM parancsot a régi fájlok fizikai törléséhez.

Paraméterek

  • table_name

    Egy meglévő Delta-táblát azonosít. A név nem tartalmazhat időbeli specifikációt.

  • WHEREPredikátum

    A program APPLY (PURGE)az adott partíció predikátumának megfelelő fájlokat rendezi át. Csak a partíciókulcs-attribútumokat tartalmazó szűrők támogatottak.

  • APPLY (PURGE)

    Megadja, hogy a fájl újraírásának célja a helyreállíthatóan törölt adatok törlése. Lásd: Csak metaadatok törlése az adatok újraírásának kényszerítéséhez.

  • APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))

    A következőkre vonatkozik:jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime 14.3 és újabb verziók

    Megadja, hogy a fájl újraírásának célja a tábla frissítése az adott Iceberg-verzióra. version vagy 12.

Példák

> 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));