Compartilhar via


Criar e gerenciar exibições

Este artigo mostra como criar exibições no Catálogo do Unity. Consulte O que é uma exibição?.

Permissões necessárias

Para criar uma exibição:

  • Você deve ter a permissão USE CATALOG no catálogo pai e as permissões USE SCHEMA e CREATE TABLE no esquema pai. Um administrador metastore ou o proprietário do catálogo podem conceder todos esses privilégios. Um proprietário de esquema ou um usuário com o privilégio MANAGE pode conceder os privilégios USE SCHEMA e CREATE TABLE no esquema para você.
  • Você deve ter a capacidade 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 uma exibição referenciar tabelas no metastore do Hive local do workspace, o modo de exibição poderá ser acessado somente no workspace que contém as tabelas locais do workspace. Por esse motivo, o Databricks recomenda criar exibições somente de tabelas ou exibições que estejam no metastore do Catálogo do Unity.
  • Você não pode criar uma exibição que referencie a uma exibição que foi compartilhada com você usando o Compartilhamento Delta. Consulte O que é o Compartilhamento Delta?.

Para ler uma visualização, as permissões necessárias dependem do tipo de computação, da versão do Databricks Runtime e do modo de acesso. Consulte os Requisitos para consultar exibições.

Criar uma exibição

Para criar uma exibição, execute o comando SQL a seguir. Os itens entre colchetes 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 exibição.
  • <query>: A consulta, as colunas, tabelas e exibições usadas para compor a exibição.
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;

Por exemplo, para criar uma exibição chamada sales_redacted com base nas colunas da tabela sales_raw:

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 e o databricks_table do Terraform do Databricks. Recupere uma lista de nomes completos de exibição usando o databricks_views.

Remover uma exibição

Você deve ser o proprietário da visão ou ter o privilégio MANAGE na visão para excluir uma visão. Para criar uma exibição, execute o comando SQL a seguir.

DROP VIEW IF EXISTS catalog_name.schema_name.view_name;