Freigeben über


Was ist eine Sicht?

Eine Ansicht ist das Ergebnis einer Abfrage über eine oder mehrere Tabellen und Ansichten im Unity-Katalog. Eine Ansicht ist ein schreibgeschütztes Objekt, das aus einer oder mehreren Tabellen und Ansichten in einem Metaspeicher besteht. Sie können eine Aus Tabellen und aus anderen Ansichten in mehreren Schemas und Katalogen erstellen.

In diesem Artikel werden die Ansichten beschrieben, die Sie in Azure Databricks erstellen können.

Ansichten im Unity-Katalog

Im Unity-Katalog befinden sich Ansichten auf der dritten Ebene des dreistufigen Namespaces (catalog.schema.view):

Unity Catalog-Objektmodelldiagramm, das sich auf die Ansicht konzentriert

In einer Ansicht wird der Text einer Abfrage in der Regel anhand einer oder mehrerer Datenquellen oder Tabellen im Metaspeicher gespeichert. In Azure Databricks entspricht eine Ansicht einem Spark DataFrame, der als Objekt in einem Schema beibehalten wird. Im Gegensatz zu DataFrames können Sie Ansichten von überall in Azure Databricks abfragen, vorausgesetzt, Sie verfügen über die Berechtigung dazu. Das Erstellen einer Ansicht verarbeitet oder schreibt keine Daten. Nur der Abfragetext wird im Metaspeicher im zugehörigen Schema registriert.

Hinweis

Ansichten weisen möglicherweise unterschiedliche Ausführungssemantik auf, wenn sie von anderen Datenquellen als Delta-Tabellen gesichert werden. Databricks empfiehlt, Ansichten immer durch Verweisen auf Datenquellen mithilfe eines Tabellen- oder Ansichtsnamens zu definieren. Das Definieren von Ansichten für Datasets durch Angeben eines Pfads oder URI kann zu verwirrenden Datengovernanceanforderungen führen.

Materialisierte Sichten

Materialisierte Ansichten berechnen und aktualisieren die von der definierenden Abfrage zurückgegebenen Ergebnisse inkrementell.

Sie können materialisierte Ansichten im Unity-Katalog mithilfe von Databricks SQL registrieren oder als Teil einer Delta Live Tables-Pipeline definieren. Siehe Verwenden materialisierter Ansichten in Databricks SQL und Was ist Delta Live Tables?.

Temporäre Ansichten

Eine temporäre Ansicht hat eingeschränkten Bereich und Persistenz und ist nicht in einem Schema oder Katalog registriert. Die Lebensdauer einer temporären Ansicht unterscheidet sich je nach der verwendeten Umgebung:

  • In Notebooks und Aufträgen werden temporäre Ansichten auf der Notebook- oder Skriptebene festgelegt. Sie können nicht außerhalb des Notizbuchs verwiesen werden, in dem sie deklariert sind, und nicht mehr vorhanden, wenn das Notizbuch vom Cluster getrennt wird.
  • In Databricks SQL werden temporäre Ansichten auf der Abfrageebene festgelegt. Die temporäre Ansicht kann von mehreren Anweisungen innerhalb derselben Abfrage verwendet werden, in anderen Abfragen kann jedoch nicht darauf verwiesen werden, auch nicht auf demselben Dashboard.

Dynamische Ansichten

Dynamische Ansichten können verwendet werden, um zusätzlich zur Datenmaskierung eine Zugriffskontrolle auf Zeilen- und Spaltenebene bereitzustellen. Weitere Informationen finden Sie unter Erstellen einer dynamischen Ansicht.

Ansichten im Hive-Metaspeicher (Legacy)

Sie können Legacy-Hive-Ansichten für jede Datenquelle definieren und im älteren Hive-Metaspeicher registrieren. Databricks empfiehlt, alle legacy-Hive-Ansichten in den Unity-Katalog zu migrieren. Siehe Ansichten im Hive-Metaspeicher.

Globale Hive-Temp-Ansicht (Legacy)

Globale Temp-Ansichten sind ein älteres Azure Databricks-Feature, mit dem Sie eine temporäre Ansicht registrieren können, die für alle Workloads verfügbar ist, die für eine Computeressource ausgeführt werden. Globale Temp-Ansichten sind ein Legacy-Holdover von Hive und HDFS. Databricks empfiehlt, globale temp-Ansichten zu verwenden.