REFRESH (VISTA MATERIALIZADA ou TABELA DE STREAMING)
Aplica-se a: Databricks SQL
Atualize os dados para uma tabela de streaming ou uma exibição materializada. Os dados são atualizados de forma síncrona por padrão.
Você pode acompanhar o status da atualização executando DESCRIBE EXTENDED
.
Nota
As operações de criação e atualização em exibições materializadas e tabelas de streaming são alimentadas por um pipeline Delta Live Tables sem servidor. Você pode usar o Gerenciador de Catálogos para exibir detalhes sobre os pipelines de backup na interface do usuário. Consulte O que é o Catalog Explorer?.
Sintaxe
REFRESH { MATERIALIZED VIEW | [ STREAMING ] TABLE } table_name [ FULL | { SYNC | ASYNC }]
Parâmetros
-
Identifica a exibição materializada ou a tabela de streaming a ser atualizada. O nome não deve incluir uma especificação temporal ou uma especificação de opções. Se o objeto não puder ser encontrado, o Azure Databricks gerará um erro TABLE_OR_VIEW_NOT_FOUND .
COMPLETO
Se deseja executar uma atualização completa.
- Para visualizações materializadas, uma atualização completa processa todos os dados disponíveis na fonte.
- Para tabelas de streaming, uma atualização completa trunca a tabela e processa todos os dados disponíveis na fonte com a definição mais recente da tabela de streaming.
Não é recomendável chamar atualizações completas em fontes que não mantêm todo o histórico dos dados ou têm períodos de retenção curtos, como Kafka, pois a atualização completa trunca os dados existentes. Talvez não seja possível recuperar dados antigos se os dados não estiverem mais disponíveis na fonte.
SINCRONIZAÇÃO
Se uma atualização síncrona deve ser executada. O comando bloqueia até que a exibição materializada ou a tabela de streaming seja criada e a carga inicial de dados seja concluída.
Este é o comportamento predefinido.
ASSÍNCRONO
Se deve executar uma atualização assíncrona, que inicia um trabalho em segundo plano no Delta Live Tables. O comando retorna imediatamente antes da conclusão da carga de dados com um link para o pipeline Delta Live Tables que dá suporte à exibição materializada ou à tabela de streaming. Você pode visitar o link para ver o status da atualização.
Você deve especificar
ASYNC
se deseja executar atualizações assíncronas. A operação é executada de forma síncrona se nenhuma palavra-chave for especificada.
Exemplos
-- Refreshes the materialized view to reflect the latest available data
> REFRESH MATERIALIZED VIEW catalog.schema.view_name;
-- Refreshes the streaming table to process the latest available data
-- The current catalog and schema will be used to qualify the table
> REFRESH STREAMING TABLE st_name;
-- Truncates the table and processes all data from scratch for the streaming table
> REFRESH TABLE cat.db.st_name FULL;