Erstellen und Verwalten von Sichten
In diesem Artikel erfahren Sie, wie Sie Ansichten in Unity Catalog erstellen. Weitere Informationen finden Sie unter Was ist eine Sicht?.
Erforderliche Berechtigungen
So erstellen Sie eine Sicht:
- Sie benötigen die
USE CATALOG
-Berechtigung für den übergeordneten Katalog und dieUSE SCHEMA
- undCREATE TABLE
-Berechtigungen für das übergeordnete Schema. Ein Metastoreadministrator oder der Katalogbesitzer kann Ihnen all diese Berechtigungen gewähren. Ein Schemabesitzer kann Ihnen die BerechtigungenUSE SCHEMA
undCREATE TABLE
für das Schema erteilen. - Sie müssen in der Lage sein, die Tabellen und Ansichten zu lesen, auf die in der Ansicht verwiesen wird (
SELECT
sowohl in der Tabelle oder Ansicht als auchUSE CATALOG
im Katalog undUSE SCHEMA
im Schema). - Wenn eine Ansicht auf Tabellen im arbeitsbereichslokalen Hive-Metastore verweist, kann auf die Ansicht nur von dem Arbeitsbereich aus zugegriffen werden, der die arbeitsbereichslokalen Tabellen enthält. Aus diesem Grund empfiehlt Databricks, Ansichten nur aus Tabellen oder Ansichten zu erstellen, die sich im Metastore von Unity Catalog befinden.
- Sie können keine Ansicht erstellen, die auf eine Ansicht verweist, die mit Delta Sharing für Sie freigegeben wurde. Weitere Informationen finden Sie unter Was ist Delta Sharing?.
Zum Lesen einer Ansicht hängen die erforderlichen Berechtigungen vom Computetyp, Databricks Runtime-Version und Zugriffsmodus ab:
Für Einzelbenutzer-Computeressourcen auf Databricks Runtime 15.4 und höher, gemeinsamen Computeressourcen und SQL-Warehouses benötigen Sie
SELECT
für die Ansicht selbst,USE CATALOG
für ihren übergeordneten Katalog undUSE SCHEMA
für ihr übergeordnetes Schema.Hinweis
Wenn Sie eine Einzelbenutzer-Computeressource auf Databricks Runtime 15.4 LTS und höher verwenden, müssen Sie außerdem sicherstellen, dass Ihr Arbeitsbereich für serverloses Computing aktiviert ist, das die Datenfilterfunktionalität ausführt, die den Zugriff auf die Ansicht unterstützt, ohne dass ein Zugriff auf die zugrunde liegenden Tabellen und Ansichten der Ansicht erforderlich ist. Möglicherweise werden Ihnen daher serverlose Computing-Ressourcen in Rechnung gestellt, wenn Sie Einzelbenutzer-Compute zur Abfrage von Ansichten verwenden. Weitere Informationen finden Sie unter Präzise Zugriffssteuerung auf Einzelbenutzer-Compute. Die Datenfilterung mithilfe von Databricks Runtime 15.4 und serverlosem Compute befindet sich in der öffentlichen Vorschau.
Bei Einzelbenutzer-Computeressourcen auf Databricks Runtime 15.3 und darunter müssen Sie auch über
SELECT
in allen Tabellen und Ansichten verfügen, auf welche die Ansicht verweist, zusätzlich zuUSE CATALOG
in ihren übergeordneten Katalogen undUSE SCHEMA
in ihren übergeordneten Schemas.
Erstellen einer Ansicht
Führen Sie den folgenden SQL Befehl aus, um eine Ansicht zu erstellen. Elemente in Klammern sind optional. Ersetzen Sie folgende Platzhalterwerte:
<catalog-name>
: Der Name des Katalogs.<schema-name>
: Der Name des Schemas.<view-name>
: Ein Name für die Ansicht.<query>
: Die Abfrage, Spalten, Tabellen und Ansichten, die zum Zusammenstellen der Ansicht verwendet werden.
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;
So erstellen Sie beispielsweise eine Ansicht namens sales_redacted
aus Spalten in der sales_raw
-Tabelle:
CREATE VIEW sales_metastore.sales.sales_redacted AS
SELECT
user_id,
email,
country,
product,
total
FROM sales_metastore.sales.sales_raw;
Sie können auch eine Ansicht erstellen, indem Sie den Databricks-Terraform-Anbieter und databricks_table verwenden. Sie können eine Liste der vollständigen Namen der Ansichten mithilfe von databricks_views abrufen.
Löschen einer Sicht
Sie müssen der Besitzer der Ansicht sein, um eine Ansicht löschen zu können. Führen Sie den folgenden SQL Befehl aus, um eine Ansicht abzulegen.
DROP VIEW IF EXISTS catalog_name.schema_name.view_name;