Pular para o conteúdo
Lucas Lessa
Voltar para as notícias
SnowflakeGAImpacto: Médio

Adicione e remova restrições em hybrid tables online no Snowflake

Agora você pode adicionar e remover restrições UNIQUE e FOREIGN KEY em hybrid tables existentes sem precisar recriar a tabela.

O que mudou

Com esta atualização, gerenciar restrições em tabelas transacionais ficou mais simples. Antes, modificar restrições em uma hybrid table exigia recriar e recarregar toda a tabela. Agora, a operação ocorre online e em segundo plano, mantendo a tabela ativa para consultas e gravações.

Para que serve

Imagine que você precisa adicionar uma chave estrangeira em uma tabela de produção que atende a milhares de requisições simultâneas, sem causar indisponibilidade.

  • Adicionar restrições UNIQUE ou FOREIGN KEY em tabelas existentes.
  • Remover restrições sem interromper as aplicações ativas.
  • Validar novas regras de integridade sem derrubar o fluxo operacional.

Como usar

Execute o comando ALTER TABLE para adicionar a restrição desejada:

ALTER TABLE player ADD CONSTRAINT fk_player_team
  FOREIGN KEY (team_id) REFERENCES team (team_id);

O que acontece nesse código:

  1. O Snowflake inicia a criação do índice necessário em segundo plano.
  2. O comando retorna antes da conclusão total para não travar o fluxo.

Para acompanhar o andamento da construção do índice, utilize o comando SHOW INDEXES:

SHOW INDEXES;

O que acontece nesse código:

  1. O Snowflake lista os índices da tabela.
  2. A coluna status mostra BUILD IN PROGRESS enquanto o processo roda e ACTIVE quando a restrição estiver pronta.

Limitações e requisitos

Disponível em General Availability para contas nas regiões comerciais da AWS e do Microsoft Azure. Se houver falha de validação em linhas existentes durante a adição da restrição, o comando é concluído, mas o status relata falha na validação, aplicando a regra apenas para novas gravações.

Ver nota oficial do Snowflake

Add and drop hybrid table constraints online (General availability)

Resumo e explicação gerados por IA a partir da release note oficial. Em caso de dúvida, a documentação oficial da plataforma prevalece.

Relacionadas