Compartilhar via


O que são tabelas e visualizações?

Tabelas e exibições são conceitos fundamentais no Databricks para organizar e acessar dados.

Uma tabela é um conjunto de dados estruturado armazenado em um local específico, normalmente no formato Delta Lake. As tabelas armazenam dados reais no armazenamento e podem ser consultadas e manipuladas usando comandos SQL ou APIs DataFrame, suportando operações como inserção, atualização, exclusão e mesclagem. Consulte O que é uma tabela?.

Uma exibição é uma tabela virtual definida por uma consulta SQL. Uma exibição não armazena dados em si. Em vez disso, uma exibição fornece uma maneira de apresentar dados de uma ou mais tabelas em um formato ou abstração específico. As exibições são úteis para simplificar consultas complexas, encapsular a lógica de negócios e fornecer uma interface consistente para os dados subjacentes sem duplicar o armazenamento. Consulte O que é uma exibição?.

Tabelas e exibições no Catálogo do Unity

Tabelas e exibições são controladas usando o Catálogo do Unity. No Catálogo do Unity, as tabelas e exibições ficam no terceiro nível do namespace de três níveis (catalog.schema.table), conforme mostrado no diagrama a seguir.

Diagrama de modelo de objeto do Unity Catalog, focado na tabela

Diferenças entre tabelas Delta, tabelas de streaming e exibições materializadas

A tabela a seguir responde a perguntas frequentes sobre as diferenças entre tabelas Delta, tabelas de streaming e exibições materializadas.

Pergunta Tabela Delta ST MV
O que é isso? Tabelas padrão armazenadas no formato Delta Lake, com suporte a transações ACID, imposição de esquema e outros recursos do Delta Lake. Uma tabela Delta regular que foi estendida para casos de uso de streaming e processamento incremental. O resultado de uma consulta cujo resultado é sempre pré-calculado e correto.
Para quais casos de uso ele é recomendado? Código de procedimento que faz o seguinte:

-Ingestão
-Transformação
Código declarativo que faz o seguinte:

- Ingestão de fontes somente de acréscimo
- Transformações de baixa latência
Código declarativo que faz o seguinte:

- Transformações incrementais
- Transformações em lote
Como é preenchido? Código de procedimento (INSERT, UPDATE, MERGE, substituição de partição usando replaceWhere) Código declarativo incluindo:

- Anexar fluxos
- APLICAR fluxos CHANGES
- Uma vez que flui
Consultas declarativas
Qual é o tipo de objeto no Catálogo do Unity? Tabela Tabela Visualizar
Quem pode atualizá-lo? Qualquer gravador que possa atualizar uma tabela Delta. Somente o pipeline que define a tabela de streaming pode atualizá-la. Somente o pipeline que define a exibição materializada pode atualizá-la.
Com quais recursos do Delta Lake ele é compatível? Suporta todos os recursos do Delta Lake. Não é compatível com:

- Particionamento líquido
- Otimização preditiva
Não é compatível com:

- Particionamento líquido
- Otimização preditiva