Creare e gestire visualizzazioni
Questo articolo illustra come creare visualizzazioni in Unity Catalog. Vedere Che cos'è una visualizzazione?.
Autorizzazioni necessarie
Per creare una visualizzazione:
- È necessario disporre dell'autorizzazione
USE CATALOG
nel catalogo padre e delle autorizzazioniUSE SCHEMA
eCREATE TABLE
nello schema padre. Un amministratore del metastore o il proprietario del catalogo può concederti tutti questi privilegi. Un proprietario o un utente dello schema con il privilegioMANAGE
può concederti i privilegiUSE SCHEMA
eCREATE TABLE
sullo schema. - È necessario essere in grado di leggere le tabelle e le viste che vengono richiamate nella visualizzazione (
SELECT
nella tabella o nella vista, nonchéUSE CATALOG
nel catalogo eUSE SCHEMA
nello schema). - Se una visualizzazione fa riferimento alle tabelle nel metastore Hive locale dell'area di lavoro, è possibile accedere alla visualizzazione solo dall'area di lavoro stessa che contiene le tabelle locali. Per questo motivo, Databricks consiglia di creare visualizzazioni solo da tabelle o viste presenti nel metastore di 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. Consulta i requisiti per l'esecuzione di query sulle viste.
Crea una visualizzazione
Per creare una vista, eseguire il comando SQL seguente. Gli elementi tra parentesi sono facoltativi. Sostituire i valori dei segnaposto:
-
<catalog-name>
: nome del catalogo. -
<schema-name>
: nome dello schema. -
<view-name>
: nome della visualizzazione. -
<query>
: query, colonne e tabelle e viste 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 colonne nella tabella sales_raw
:
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 elenco dei nomi completi delle viste usando 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;