REORG TABLE
Aplica-se a: Databricks SQL Databricks Runtime 11.3 LTS e versões posteriores
Reorganizar uma tabela do Delta Lake reconfigurando arquivos para limpar dados excluídos de forma reversível, como os dados de coluna descartados por ALTER TABLE DROP COLUMN.
Sintaxe
REORG [ TABLE ] table_name { [ WHERE predicate ] APPLY ( PURGE ) |
APPLY ( UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ) } )
Para versões do Databricks Runtime anteriores à 15.4 TABLE
, é uma palavra-chave obrigatória.
Observação
APPLY (PURGE)
regenera apenas arquivos que contêm dados excluídos temporariamente.APPLY (UPGRADE)
pode regenerar todos os arquivos.- A
REORG TABLE
é idempotente, o que significa que, se for executada duas vezes no mesmo conjunto de dados, a segunda execução não terá efeito. - Depois de executar a
APPLY (PURGE)
, os dados excluídos de forma temporária ainda podem existir nos arquivos antigos. Você pode executar o VACUUM para excluir fisicamente os arquivos antigos.
Parâmetros
-
Identifica uma tabela do Delta existente. O nome não deve incluir uma especificação temporal ou especificação de opções.
WHERE
predicateO
APPLY (PURGE)
, reorganiza os arquivos que correspondem ao predicado de partição fornecido. Há suporte apenas para filtros que envolvam atributos de chave de partição.APPLY (PURGE)
Especifica que a finalidade da reconfiguração de arquivo é limpar dados excluídos de forma reversível. Confira Limpar exclusões somente de metadados para forçar a regeneração de dados.
APPLY (UPGRADE UNIFORM ( ICEBERG_COMPAT_VERSION = version ))
Aplica-se a: Databricks SQL Databricks Runtime 14.3 e versões posteriores
Especifica que a finalidade da reconfiguração de arquivo é fazer upgrade da tabela para a versão Iceberg especificada.
version
deve ser1
ou2
.
Exemplos
> 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));