ALTER TABLE PARTITION
Aplica-se a: SQL do Databricks Runtime do Databricks
Adiciona, descarta, renomeia ou recupera partições de uma tabela.
Não há suporte para o gerenciamento de partições em tabelas delta lake.
Sintaxe
ALTER TABLE table_name
{ ADD PARTITION clause |
DROP PARTITION clause |
PARTITION SET LOCATION clause |
RENAME PARTITION clause |
RECOVER PARTITIONS clause }
Cláusula ADD PARTITION
Adiciona uma ou mais partições à tabela.
Sintaxe
ADD [IF NOT EXISTS] { PARTITION clause [ LOCATION path ] } [...]
Parâmetros
IF NOT EXISTS
Uma cláusula opcional que direciona o Azure Databricks para ignorar a instrução se a partição já existir.
-
Uma partição a ser adicionada. As chaves de partição devem corresponder ao particionamento da tabela e estar associadas a valores. Se a partição já existir, um erro será gerado, a menos que
IF NOT EXISTS
tenha sido especificado. LOCATION path
path
deve ser umSTRING
literal que representa um local opcional apontando para a partição.Se nenhum local for especificado, o local será derivado do local da tabela e das chaves de partição.
Se houver arquivos presentes no local, eles preencherão a partição e deverão ser compatíveis com o
data_source
da tabela e suas opções.
Cláusula DROP PARTITION
Descarta uma ou mais partições da tabela, excluindo opcionalmente todos os arquivos nos locais de partições.
Sintaxe
DROP [ IF EXISTS ] PARTITION clause [, ...] [PURGE]
Parâmetros
IF EXISTS
Quando você especificar
IF EXISTS
o Azure Databricks ignorará uma tentativa de remover partições que não existem. Caso contrário, partições não existentes causarão um erro.-
Especifica uma partição a ser removida. Se a partição for identificada apenas parcialmente, uma fatia de partições será removida.
PURGE
Se definido, o catálogo de tabelas deverá remover dados de partição ignorando a pasta Lixeira mesmo quando o catálogo tiver configurado uma. A opção é aplicável somente em tabelas gerenciadas. Ela só é eficaz quando:
O sistema de arquivos dá suporte a uma pasta Lixeira. O catálogo foi configurado para mover a partição removida para a pasta Lixeira. Não há nenhuma pasta Lixeira no AWS S3, portanto, isso não é eficaz.
Não é necessário excluir manualmente os arquivos depois de remover partições.
Cláusula RENAME PARTITION
Substitui as chaves de uma partição.
Sintaxe
from_partition_clause RENAME TO to_partition_clause
Parâmetros
-
A definição da partição a ser renomeada.
-
A nova definição para essa partição. Uma partição com as mesmas chaves ainda não deve existir.
Cláusula RECOVER PARTITIONS
Essa cláusula não se aplica às tabelas do Delta Lake.
Instrui o Azure Databricks a verificar o local da tabela e adicionar todos os arquivos à tabela que foram adicionados diretamente ao sistema de arquivos.
Sintaxe
RECOVER PARTITIONS
Parâmetros
Nenhum
Cláusula de PARTITION SET LOCATION
Move o local de uma partição.
Sintaxe
PARTITION clause SET LOCATION path
Parâmetros
-
Identifica a partição para a qual o local será alterado.
LOCATION path
path
deve ser uma literal deSTRING
. Especifica o novo local para a partição.Os arquivos no local original não serão movidos para o novo local.
Exemplos
Confira Exemplos de ALTER TABLE.