Delen via


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 de USE SCHEMA machtigingen voor CREATE TABLE het bovenliggende schema. Een metastore-beheerder of de cataloguseigenaar kan u al deze bevoegdheden verlenen. Een schema-eigenaar of -gebruiker met de MANAGE-bevoegdheid kan u USE SCHEMA en CREATE 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, evenals USE CATALOG in de catalogus en USE 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 en USE 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, naast USE CATALOG de bovenliggende catalogi en USE 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;