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õesUSE SCHEMA
eCREATE 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 pode conceder a você os privilégiosUSE SCHEMA
eCREATE TABLE
no esquema. - Você deve ter a capacidade 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 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 exibição, as permissões necessárias dependem do tipo de computação, da versão do Databricks Runtime e do modo de acesso:
No caso de recursos de computação de usuário único no Databricks Runtime 15.4 e superior, recursos de computação compartilhados e SQL warehouses, você precisa
SELECT
na própria exibição,USE CATALOG
no catálogo pai eUSE SCHEMA
no esquema pai.Observação
Se você estiver usando um recurso de computação de usuário único no Databricks Runtime 15.4 LTS e posterior, também precisará verificar se o workspace está habilitado para a computação sem servidor, que executa a funcionalidade de filtragem de dados que dá suporte ao acesso de exibição sem a necessidade de acesso às exibições e às tabelas subjacentes da exibição. Portanto, você pode ser cobrado por recursos de computação sem servidor ao usar a computação de usuário único para consultar exibições. Confira Controle de acesso refinado na computação de usuário único. A filtragem de dados por meio do Databricks Runtime 15.4 e da computação sem servidor estão em Visualização Pública.
No caso de recursos de computação de usuário único no Databricks Runtime 15.3 e inferior, você também precisa ter
SELECT
em todas as tabelas e exibições que a exibição referencia, além deUSE CATALOG
nos catálogos pai eUSE SCHEMA
nos esquemas pai.
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 exibição para remover uma exibição. Para criar uma exibição, execute o comando SQL a seguir.
DROP VIEW IF EXISTS catalog_name.schema_name.view_name;