REORG TABLE
Platí pro: Databricks SQL
Databricks Runtime 11.3 LTS a vyšší
Přeorganizovat Delta Lake table přepsáním souborů, aby byla vymazána softwarově odstraněná data, jako jsou column data vyřazená ALTER TABLE DROP COLUMN.
Syntaxe
REORG [ TABLE ] table_name { [ WHERE predicate ] APPLY ( PURGE ) |
APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )
Pro verze Databricks Runtime starší než 15.4 TABLE
je povinné klíčové slovo.
Poznámka:
-
APPLY (PURGE)
Přepíše pouze soubory, které obsahují obnovitelně odstraněná data. -
APPLY (UPGRADE)
může přepsat všechny soubory. -
REORG TABLE
je idempotentní, což znamená, že pokud se spustí dvakrát ve stejné datové sadě, druhé spuštění nemá žádný vliv. - Po spuštění
APPLY (PURGE)
můžou ve starých souborech stále existovat obnovitelně odstraněná data. Ke fyzickému odstranění starých souborů můžete spustit VACUUM.
Parameters
-
Identifikuje existující Delta table. Název nesmí obsahovat dočasnou specifikaci ani specifikaci možností.
WHERE
predikátU
APPLY (PURGE)
přeuspořádá soubory, které odpovídají danému predikátu partition. Podporují se pouze filtry zahrnující partition klíčové atributy.APPLY (PURGE)
Určuje, že účelem přepsání souboru je vyprázdnit obnovitelně odstraněná data. Viz Odstranění metadat pouze k vynucení přepsání dat.
APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))
Platí pro:
Databricks SQL
Databricks Runtime 14.3 a vyšší
Určuje, že účelem přepsání souboru je upgradovat table na danou verzi Icebergu.
version
musí být buď1
nebo2
.
Příklady
> 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));