Compartilhar via


Atualizar operações para exibições materializadas

Importante

As exibições materializadas no Databricks SQL estão em versão preliminar pública.

As exibições materializadas são objetos de banco de dados que contêm os resultados de uma consulta SQL em uma ou mais tabelas de base. Algumas exibições materializadas podem ser atualizadas incrementalmente, propagando automaticamente e incrementalmente as alterações das tabelas base.

Este artigo explica os tipos de operações de atualização que podem ser aplicadas a exibições materializadas e identifica as operações SQL, palavras-chave e cláusulas que dão suporte à atualização incremental.

Observação

Para criar e usar exibições materializadas, o workspace deve atender aos requisitos.

Tipos de atualização

As operações de atualização são um destes tipos:

  • Atualização incremental: uma atualização incremental processa alterações nos dados subjacentes após a última atualização e, em seguida, acrescenta esses dados à tabela. Dependendo das tabelas base e das operações incluídas, somente determinados tipos de exibições materializadas podem ser atualizados incrementalmente.
  • Atualização completa: uma atualização completa trunca a tabela e reprocessa todos os dados disponíveis na origem com a definição mais recente. Não é recomendável executar atualizações completas em fontes que não mantêm todo o histórico de dados ou têm períodos de retenção curtos, como Kafka, porque a atualização completa trunca os dados existentes. Talvez você não consiga recuperar dados antigos se os dados não estiverem mais disponíveis na origem.

Suporte para atualização incremental de exibição materializada

A tabela a seguir lista o suporte para atualização incremental por palavra-chave ou cláusula SQL:

Palavra-chave ou cláusula SQL Suporte para atualização incremental
Expressões SELECT Expressões que incluem funções internas determinísticas e UDFs (funções definidas pelo usuário) imutáveis são compatíveis.
WITH Sim, há suporte para expressões de tabela comuns.
FROM As tabelas base com suporte incluem tabelas Delta, exibições materializadas e tabelas de streaming
EXPECTATIONS Não. As exibições materializadas que usam as expectativas são sempre totalmente atualizadas.
UNION ALL Não
INNER JOIN No
LEFT JOIN No
GROUP BY Sim
WHERE, HAVING Cláusulas de filtro como WHERE e HAVING têm suporte.
OVER Não
QUALIFY Número

Observação

Não há suporte para funções não determinísticas, por exemplo CURRENT_TIMESTAMP.