Weergaven maken en beheren
In dit artikel wordt beschreven hoe u weergaven maakt in Unity Catalog. Zie Wat is een weergave?
Vereiste machtigingen
Een weergave maken:
- U moet de
USE CATALOG
machtiging hebben voor de bovenliggende catalogus en deUSE SCHEMA
machtigingen voorCREATE TABLE
het bovenliggende schema. Een metastore-beheerder of de cataloguseigenaar kan u al deze bevoegdheden verlenen. Een schema-eigenaar of -gebruiker met deMANAGE
-bevoegdheid kan uUSE SCHEMA
enCREATE TABLE
bevoegdheden voor het schema verlenen. - U moet de tabellen en weergaven kunnen lezen waarnaar wordt verwezen in de weergave (
SELECT
in de tabel of weergave, evenalsUSE CATALOG
in de catalogus enUSE SCHEMA
in het schema). - Als een weergave verwijst naar tabellen in de hive-metastore van de werkruimte, kan de weergave alleen worden geopend vanuit de werkruimte die de lokale tabellen van de werkruimte bevat. Daarom raadt Databricks aan om alleen weergaven te maken van tabellen of weergaven die zich in de Unity Catalog-metastore bevinden.
- U kunt geen weergave maken die verwijst naar een weergave die met u is gedeeld met behulp van Delta Sharing. Zie Wat is Delta Sharing?
Voor het lezen van een weergave zijn de vereiste machtigingen afhankelijk van het rekentype, de Databricks Runtime-versie en de toegangsmodus:
- Voor alle rekenresources moet
SELECT
u beschikken over de weergave zelf,USE CATALOG
in de bovenliggende catalogus enUSE SCHEMA
in het bovenliggende schema. Dit geldt voor alle rekentypen die ondersteuning bieden voor Unity Catalog, waaronder SQL-warehouses, clusters in de modus voor gedeelde toegang en clusters in de modus voor toegang tot één gebruiker in Databricks Runtime 15.4 en hoger. - Voor clusters in Databricks Runtime 15.3 en lager die gebruikmaken van de modus voor toegang van één gebruiker, moet u ook alle tabellen en weergaven hebben
SELECT
waarnaar wordt verwezen door de weergave, naastUSE CATALOG
de bovenliggende catalogi enUSE SCHEMA
op hun bovenliggende schema's.
Notitie
Als u een cluster met één gebruiker gebruikt in Databricks Runtime 15.4 LTS en hoger en u wilt voorkomen dat u de vereiste hebt voor SELECT
de onderliggende tabellen en weergaven, controleert u of uw werkruimte is ingeschakeld voor serverloze berekeningen.
Serverloze berekening verwerkt gegevensfiltering, waardoor toegang tot een weergave mogelijk is zonder dat hiervoor machtigingen zijn vereist voor de onderliggende tabellen en weergaven. Houd er rekening mee dat er serverloze rekenkosten in rekening worden gebracht wanneer u rekenkracht van één gebruiker gebruikt om query's uit te voeren op weergaven. Zie Fijnmazig toegangsbeheer voor rekenkracht van één gebruiker voor meer informatie.
Een weergave maken
Voer de volgende SQL-opdracht uit om een weergave te maken. Items tussen haakjes zijn optioneel. Vervang de waarden van de tijdelijke aanduidingen:
-
<catalog-name>
: De naam van de catalogus. -
<schema-name>
: De naam van het schema. -
<view-name>
: Een naam voor de weergave. -
<query>
: De query, kolommen en tabellen en weergaven die worden gebruikt om de weergave samen te stellen.
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;
Als u bijvoorbeeld een weergave wilt maken met de naam sales_redacted
van kolommen in de sales_raw
tabel:
CREATE VIEW sales_metastore.sales.sales_redacted AS
SELECT
user_id,
email,
country,
product,
total
FROM sales_metastore.sales.sales_raw;
U kunt ook een weergave maken met behulp van de Databricks Terraform-provider en databricks_table. U kunt een lijst met volledige weergavenamen ophalen met behulp van databricks_views.
Een weergave verwijderen
U moet de eigenaar van de weergave zijn of de bevoegdheid MANAGE
voor de weergave hebben om een weergave te verwijderen. Als u een weergave wilt verwijderen, voert u de volgende SQL-opdracht uit:
DROP VIEW IF EXISTS catalog_name.schema_name.view_name;