Creare e gestire views
Questo articolo illustra come creare views in Unity Catalog. Vedere Che cos'è una visualizzazione?.
Autorizzazioni necessarie
Per creare una visualizzazione:
- È necessario avere l'autorizzazione
USE CATALOG
sul genitore catalog e le autorizzazioniUSE SCHEMA
eCREATE TABLE
sul genitore schema. Un amministratore del metastore o il proprietario del catalog può grant tutti questi privilegi. Un proprietario o un utente schema con il privilegio diMANAGE
può grant,USE SCHEMA
eCREATE TABLE
privilegi sul schema. - È necessario essere in grado di leggere il tables e views a cui si fa riferimento nella vista (
SELECT
nella table o nella vista, nonchéUSE CATALOG
nella catalog eUSE SCHEMA
nel schema). - Se una vista fa riferimento a tables nel metastore Hive locale dell'area di lavoro, è possibile accedere alla vista solo dall'area di lavoro che contiene il metastore Hive locale dell'area di lavoro tables. Per questo motivo, Databricks consiglia di creare views solo da tables o views presenti nel metastore Unity Catalog.
- Non è possibile creare una vista che faccia riferimento a una visualizzazione condivisa con l'utente usando la condivisione delta. Si veda Che cos'è Delta Sharing?.
Per leggere una visualizzazione, le autorizzazioni necessarie dipendono dal tipo di calcolo, dalla versione di Databricks Runtime e dalla modalità di accesso. Consultare i requisiti di per eseguire query su views.
Crea una visualizzazione
Per creare una vista, eseguire il comando SQL seguente. Gli elementi tra parentesi sono facoltativi. Sostituire il segnaposto values:
-
<catalog-name>
: nome del catalog. -
<schema-name>
: nome del schema. -
<view-name>
: nome della visualizzazione. -
<query>
: La query, columns, tables e views usate per comporre la vista.
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;
Ad esempio, per creare una vista denominata sales_redacted
da columns nel sales_raw
table:
CREATE VIEW sales_metastore.sales.sales_redacted AS
SELECT
user_id,
email,
country,
product,
total
FROM sales_metastore.sales.sales_raw;
È anche possibile creare una vista usando il provider Databricks Terraform e databricks_table. È possibile recuperare un list di nomi completi di visualizzazione utilizzando databricks_views.
Eliminare una vista
È necessario essere il proprietario della visualizzazione o avere il privilegio MANAGE
nella visualizzazione per eliminare una visualizzazione. Per eliminare una vista, eseguire il comando SQL seguente:
DROP VIEW IF EXISTS catalog_name.schema_name.view_name;