Partilhar via


Criar e gerir vistas

Este artigo mostra como criar exibições no Unity Catalog. Consulte O que é uma vista?.

Permissões obrigatórias

Para criar uma vista:

  • Você deve ter a USE CATALOG permissão no catálogo pai e as USE SCHEMA permissões e CREATE TABLE no esquema pai. Um administrador de metastore ou o proprietário do catálogo pode conceder todos esses privilégios. Um proprietário de esquema pode conceder-lhe USE SCHEMA privilégios no CREATE TABLE esquema.
  • Você deve ser capaz de ler as tabelas e exibições referenciadas na exibição (SELECT na tabela ou exibição, bem como USE CATALOG no catálogo e USE SCHEMA no esquema).
  • Se um modo de exibição fizer referência a tabelas no metastore do Hive local do espaço de trabalho, o modo de exibição poderá ser acessado somente do espaço de trabalho que contém as tabelas locais do espaço de trabalho. Por esse motivo, o Databricks recomenda a criação de exibições somente a partir de tabelas ou exibições que estão no metastore do Unity Catalog.
  • Não é possível criar um modo de exibição que faça referência a um modo de exibição que foi compartilhado com você usando o Compartilhamento Delta. Consulte Compartilhar dados e ativos de IA com segurança usando o Delta Sharing.

Para ler uma exibição, as permissões necessárias dependem do tipo de computação e do modo de acesso:

  • Para clusters compartilhados e armazéns SQL, você precisa SELECT da própria exibição, USE CATALOG do catálogo pai e USE SCHEMA do esquema pai.
  • Para clusters de usuário único, você também deve ter SELECT em todas as tabelas e exibições às quais o modo de exibição faz referência, além de USE CATALOG seus catálogos pai e USE SCHEMA em seus esquemas pai.

Para criar ou ler vistas dinâmicas:

  • Os requisitos para exibições dinâmicas são os mesmos listados nas seções anteriores, exceto que você deve usar um cluster compartilhado ou um SQL warehouse para criar ou ler uma exibição dinâmica. Não é possível usar clusters de usuário único.

Criar uma vista

Para criar um modo de exibição, execute o seguinte comando SQL. Os itens entre parênteses são opcionais. Substitua os valores de espaço reservado:

  • <catalog-name>: O nome do catálogo.
  • <schema-name>: O nome do esquema.
  • <view-name>: Um nome para a vista.
  • <query>: A consulta, as colunas, as tabelas e os modos de exibição usados para compor o modo de exibição.
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;

Por exemplo, para criar um modo de exibição nomeado sales_redacted a partir de colunas na sales_raw tabela:

CREATE VIEW sales_metastore.sales.sales_redacted AS
SELECT
  user_id,
  email,
  country,
  product,
  total
FROM sales_metastore.sales.sales_raw;

Você também pode criar uma exibição usando o provedor Databricks Terraform e databricks_table. Você pode recuperar uma lista de nomes completos de exibição usando databricks_views.

Soltar uma vista

Tem de ser o proprietário da vista para largar uma vista. Para soltar um modo de exibição, execute o seguinte comando SQL:

DROP VIEW IF EXISTS catalog_name.schema_name.view_name;