Criar e gerir vistas
Este artigo mostra como criar vistas no Unity Catalog. Consulte O que é uma vista?.
Permissões obrigatórias
Para criar uma vista:
- Você deve ter a permissão
USE CATALOG
no catálogo pai e as permissõesUSE SCHEMA
eCREATE TABLE
no esquema pai. Um administrador de metastore ou o proprietário do catálogo pode conceder todos esses privilégios. Um proprietário ou usuário do esquema com o privilégioMANAGE
pode conceder-lhe privilégios deUSE SCHEMA
eCREATE TABLE
no esquema. - Você deve ser capaz de ler as tabelas e exibições referenciadas na exibição (
SELECT
na tabela ou exibição, bem comoUSE CATALOG
no catálogo eUSE 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 O que é Delta Sharing?.
Para ler uma exibição, as permissões necessárias dependem do tipo de computação, da versão do Databricks Runtime e do modo de acesso. Consulte Requisitos para consultar vistas.
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 as views usadas para compor a vista.
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;
Por exemplo, para criar uma vista chamada sales_redacted
das colunas na 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 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 ou ter o privilégio de MANAGE
na vista para eliminar uma vista. Para soltar um modo de exibição, execute o seguinte comando SQL:
DROP VIEW IF EXISTS catalog_name.schema_name.view_name;