Compartir a través de


REORG TABLE

Se aplica a:casilla marcada como sí Databricks SQL casilla marcada como Sí Databricks Runtime 11.3 LTS y versiones posteriores

Reorganice una tabla Delta Lake reescribiendo archivos para purgar los datos eliminados temporalmente, como los datos de columna descartados por ALTER TABLE DROP COLUMN.

Sintaxis

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

Nota:

  • APPLY (PURGE) solo reescribe los archivos que contienen datos eliminados temporalmente.
  • APPLY (UPGRADE) puede reescribir todos los archivos.
  • REORG TABLE es idempotente, lo que significa que si se ejecuta dos veces en el mismo conjunto de datos, la segunda ejecución no tiene ningún efecto.
  • Después de ejecutar APPLY (PURGE), es posible que los datos eliminados temporalmente sigan existiendo en los archivos antiguos. Puede ejecutar VACUUM para eliminar físicamente los archivos antiguos.

Parámetros

  • table_name

    Identifica una tabla de Delta existente. El nombre no debe incluir una especificación temporal.

  • WHEREpredicado

    Para APPLY (PURGE), reorganiza los archivos que coinciden con el predicado de partición especificado. Solo se admiten los filtros que implican atributos clave de la partición.

  • APPLY (PURGE)

    Especifica que el propósito de la reescritura de archivos es purgar los datos eliminados temporalmente. Consulte Purga de eliminaciones de solo metadatos para forzar la reescritura de datos.

  • APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))

    Se aplica a:casilla marcada como sí Databricks Runtime 14.3 y versiones posteriores.

    Especifica que el propósito de la reescritura de archivos es actualizar la tabla a la versión de Iceberg dada. version debe ser 1 o 2.

Ejemplos

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