O que é uma exibição?

Um view é um objeto somente leitura que é o resultado de uma consulta em uma ou mais tabelas e visualizações em um metastore Unity Catalog. O senhor pode criar um view a partir de tabelas e de outras visualizações em vários esquemas e catálogos.

Este artigo descreve a visualização que o senhor pode criar em Databricks e fornece uma explicação sobre as permissões e compute necessárias para consultá-las.

Para obter informações sobre como criar a visualização, consulte:

ver em Unity Catalog

Em Unity Catalog, a visualização fica no terceiro nível do namespace de três níveis (catalog.schema.view):

Unity Catalog diagrama do modelo de objeto, com foco na view

O site view armazena o texto de uma consulta, normalmente em uma ou mais fontes de dados ou tabelas no metastore. Em Databricks, um view é equivalente a um Spark DataFrame persistido como um objeto em um esquema. Ao contrário de DataFrames, o senhor pode consultar a visualização de qualquer lugar em Databricks, desde que tenha permissão para isso. A criação de um view não processa nem grava nenhum dado. Somente o texto da consulta é registrado no metastore no esquema associado.

Observação

podem ter uma semântica de execução diferente se forem apoiadas por fontes de dados que não sejam as tabelas Delta. Databricks recomenda que o senhor sempre defina a visualização fazendo referência à fonte de dados usando uma tabela ou o nome view. A definição da visualização em relação ao conjunto de dados por meio da especificação de um caminho ou URI pode levar a requisitos de governança de dados confusos.

Visualização materializada

A visualização materializada calcula e atualiza de forma incremental os resultados retornados pela consulta de definição.

O senhor pode registrar a visualização materializada em Unity Catalog usando Databricks SQL ou defini-la como parte de um Delta Live Tables pipeline. Consulte Use materialized view in Databricks SQL e What is Delta Live Tables?

Visualização temporária

Um view temporário tem escopo e persistência limitados e não é registrado em um esquema ou catálogo. A vida útil de um view temporário varia de acordo com o ambiente que o senhor está usando:

  • No Notebook e no Job, a visualização temporária tem o escopo do nível Notebook ou do script. Eles não podem ser referenciados fora do site Notebook no qual foram declarados e deixam de existir quando o site Notebook se desvincula do site cluster.

  • No Databricks SQL, as exibições temporárias têm o escopo definido para o nível de consulta. Várias instruções dentro da mesma consulta podem usar o modo de exibição temporário, mas ele não pode ser referenciado em outras consultas, mesmo dentro do mesmo painel.

Visualização dinâmica

A visualização dinâmica pode ser usada para fornecer controle de acesso em nível de linha e coluna, além do mascaramento de dados. Consulte Criar um site dinâmico view.

vista no site Hive metastore (legado)

O senhor pode definir o legado Hive view em relação a qualquer fonte de dados e registrá-los no legado Hive metastore. Databricks recomenda a migração de todas as visualizações legadas do Hive para o Unity Catalog. Veja a visualização em Hive metastore.

Visualização temporária global do Hive (legado)

A visualização temporária global é um recurso legado do Databricks que permite que o senhor registre um view temporário disponível para todas as cargas de trabalho executadas em um recurso do compute. A visão global da temperatura é um legado herdado de Hive e HDFS. Databricks recomenda não usar a visualização temporária global.

Requisitos para a visualização de consultas

Para ler as visualizações registradas em Unity Catalog, as permissões necessárias dependem do tipo compute, da versão Databricks Runtime e do modo de acesso:

  • Para todos os recursos do compute, o senhor deve ter SELECT no próprio view, USE CATALOG em seu catálogo pai e USE SCHEMA em seu esquema pai. Isso se aplica a todos os tipos de compute que suportam Unity Catalog, incluindo SQL warehouse, clustering no modo de acesso compartilhado e clustering no modo de acesso de usuário único em Databricks Runtime 15.4 e acima.

  • Para clustering em Databricks Runtime 15.3 e abaixo que usam o modo de acesso de usuário único, o senhor também deve ter SELECT em todas as tabelas e visualizações referenciadas pelo view, além de USE CATALOG em seus catálogos pai e USE SCHEMA em seus esquemas pai.

Observação

Se estiver usando um clustering de usuário único em Databricks Runtime 15.4 LTS e acima e quiser evitar a exigência de ter SELECT nas tabelas e visualizações subjacentes, verifique se o seu workspace está habilitado para serverless compute .

O compute sem servidor lida com a filtragem de dados, o que permite o acesso a um view sem exigir permissões em suas tabelas e exibições subjacentes. Esteja ciente de que o senhor poderá incorrer em encargos serverless compute quando usar um único usuário compute para consultar a visualização. Para obter mais informações, consulte Controle de acesso refinado em um único usuário compute.