Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Important
Verwaltete Tabellen im Unity-Katalog sind in der Regel für Delta Lake-Tabellen verfügbar. Bei Apache Iceberg-Tabellen befindet sich dieses Feature in der öffentlichen Vorschau und ist in Databricks Runtime 16.4 LTS und höher verfügbar.
Diese Seite beschreibt verwaltete Tabellen im Unity-Katalog in Delta Lake und Apache Iceberg, dem Standard- und empfohlenen Tabellentyp in Azure Databricks. Diese Tabellen werden vollständig vom Unity-Katalog gesteuert und optimiert, bieten Leistung, Betriebsvorteile und niedrigere Speicher- und Berechnungskosten im Vergleich zu externen und ausländischen Tabellen, da verwaltete Tabellen aus Ihren Lese- und Schreibmustern lernen. Unity Catalog verwaltet alle Lese-, Schreib-, Speicher- und Optimierungsaufgaben für verwaltete Tabellen. Siehe Konvertieren einer externen Tabelle in eine verwaltete Unity-Katalogtabelle.
Datendateien für verwaltete Tabellen werden im Schema oder Katalog gespeichert, das sie enthält. Weitere Informationen finden Sie unter Angeben eines verwalteten Speicherorts in Unity Catalog.
Databricks empfiehlt die Verwendung von verwalteten Tabellen, um folgende Vorteile zu nutzen:
- Reduzierte Speicher- und Berechnungskosten.
- Schnellere Abfrageleistung für alle Clienttypen.
- Automatische Tabellenwartung und -optimierung.
- Sicherer Zugriff für Nicht-Databricks-Clients über offene APIs.
- Unterstützung der Formate Delta Lake und Iceberg.
- Automatische Upgrades auf die neuesten Plattformfeatures.
Verwaltete Tabellen unterstützen die Interoperabilität, indem der Zugriff von Delta Lake- und Iceberg-Clients ermöglicht wird. Durch offene APIs und Anmeldeinformationsverwaltung aktiviert Unity Katalog externe Module wie Trino, DuckDB, Apache Spark, Daft und Eisberg REST Katalog-integrierte Engines wie Dremio, um auf verwaltete Tabellen zuzugreifen. Für externe Clients, die offene APIs nicht unterstützen, können Sie den Kompatibilitätsmodus verwenden, um verwaltete Tabellen mit einem beliebigen Delta Lake- oder Iceberg-Client zu lesen. Delta Sharing, ein Open Source-Protokoll, ermöglicht die sichere, geregelte Datenfreigabe mit externen Partnern und Plattformen.
Sie können mit verwalteten Tabellen in allen Sprachen und Produkten arbeiten, die in Azure Databricks unterstützt werden. Sie benötigen bestimmte Berechtigungen, um verwaltete Tabellen zu erstellen, zu aktualisieren, zu löschen oder abzufragen. Weitere Informationen finden Sie unter Verwalten von Berechtigungen in Unity Catalog.
Note
Diese Seite konzentriert sich auf verwaltete Tabellen im Unity-Katalog. Bei verwalteten Tabellen im Legacy-Hive-Metaspeicher siehe Datenbankobjekte im Legacy-Hive-Metaspeicher.
Warum verwaltete Tabellen im Unity-Katalog verwenden?
Verwaltete Tabellen im Unity-Katalog optimieren automatisch Speicherkosten und Abfragegeschwindigkeiten mithilfe kisgesteuerter Technologien wie automatisches Clustering, Dateigrößenkomprimierung und intelligente Statistikensammlung. Diese Tabellen vereinfachen die Datenverwaltung mit Funktionen wie automatischem ANA und Metadatencache, während sie die Interoperabilität mit Delta- und Eisberg-Dritter-Tools sicherstellen.
Die folgenden Features gelten nur für verwaltete Tabellen im Unity-Katalog und sind für externe Tabellen und Fremdtabellen nicht verfügbar.
| Feature | Benefits | Standardmäßig aktiviert? | Konfigurierbar? |
|---|---|---|---|
| Prädiktive Optimierung | Optimiert Ihr Datenlayout automatisch und berechnet mithilfe von KI, sodass Sie Vorgänge für verwaltete Tabellen nicht manuell verarbeiten müssen. Databricks empfiehlt, eine predictive Optimierung für alle verwalteten Tabellen zu ermöglichen, um Speicher- und Berechnungskosten zu reduzieren. Predictive Optimization wird automatisch ausgeführt:
|
Ja, für alle neuen Konten, die am oder nach dem 11. November 2024 erstellt wurden. Bei aktuellen Konten beginnt Azure Databricks standardmäßig mit der Einführung der prädiktiven Optimierung. Überprüfen Sie, ob die Predictive Optimization aktiviert ist. |
Ja. Siehe "Predictive Optimization aktivieren". |
| Automatische Flüssigkeitsclusterung | Für Tabellen mit prädiktiver Optimierung ermöglicht die Aktivierung der automatischen Flüssigclustering azure Databricks die intelligente Auswahl von Clusteringschlüsseln. Wenn sich Abfragemuster ändern, aktualisiert Azure Databricks automatisch Clusteringschlüssel, um die Leistung zu verbessern und die Kosten zu senken. | Nein | Ja. Weitere Informationen finden Sie unter Aktivieren des Liquid Clustering. |
| Zwischenspeichern von Metadaten | Das Zwischenspeichern von Transaktionsmetadaten im Arbeitsspeicher verbessert die Abfrageleistung, indem Anforderungen an das in der Cloud gespeicherte Transaktionsprotokoll minimiert werden. Dieses Feature verbessert die Abfrageleistung. | Yes | Nein. Die Zwischenspeicherung von Metadaten ist für verwaltete Tabellen immer aktiviert. |
Automatische Dateilöschung nach einem DROP TABLE Befehl |
Wenn Sie eine verwaltete Tabelle ablegen , löscht Azure Databricks die Daten im Cloudspeicher nach 8 Tagen, wodurch die Speicherkosten reduziert werden. Bei externen Tabellen müssen Sie manuell zu Ihrem Speicher-Bucket wechseln und die Dateien löschen. | Yes | Nein. Bei verwalteten Tabellen werden Dateien nach 8 Tagen immer automatisch gelöscht. |
Zugreifen auf Datenbricks-Daten mithilfe externer Systeme
Verwaltete Tabellen unterstützen die Interoperabilität , indem der Zugriff von Delta Lake- und Iceberg-Clients ermöglicht wird. Durch offene APIs und Credential Vending ermöglicht der Unity Catalog externen Engines wie Trino, DuckDB, Apache Spark, Daft und Iceberg sowie REST-katalogintegrierten Engines wie Dremio und Snowflake den Zugriff auf verwaltete Tabellen. Eine Liste der unterstützten externen Engines finden Sie in den Integrationen , oder überprüfen Sie die Dokumentation Ihres Moduls, wenn sie nicht in dieser Liste enthalten ist.
Die folgenden geöffneten APIs bieten externen Systemen Zugriff auf verwaltete Tabellen im Unity-Katalog:
- Unity-REST-API: Bietet schreibgeschützten Zugriff für Delta-Clients auf verwaltete Delta-Tabellen.
- Iceberg REST Catalog (IRC):Bietet Lese- und Schreibzugriff für Iceberg-Clients auf verwaltete Iceberg-Tabellen und schreibgeschützten Zugriff auf Delta-Tabellen mit aktivierten Iceberg-Lesevorgängen (UniForm).
Beide APIs unterstützen die Ausgabe von Anmeldeinformationen, die temporäre, bereichsspezifische Anmeldeinformationen bereitstellen, welche die Berechtigungen des anfordernden Azure Databricks-Prinzipals erben und die Governance- sowie Sicherheitskontrollen aufrechterhalten.
Darüber hinaus ist Delta Sharing ein Open Source-Protokoll, das den sicheren und geregelten Datenzugriff auf externe Partner und Plattformen ermöglicht. Sie können die Delta-Freigabe verwenden, um Partnern temporären, schreibgeschützten Zugriff zu gewähren.
Alle Lese- und Schreibvorgänge in verwaltete Tabellen müssen Tabellennamen und Katalog- und Schemanamen verwenden, wo sie vorhanden sind. Beispiel: catalog_name.schema_name.table_name. Der pfadbasierte Zugriff auf verwaltete Tabellen im Unity-Katalog wird nicht unterstützt (außer im Kompatibilitätsmodus), da er die Zugriffssteuerungen des Unity-Katalogs umgeht und verhindert, dass verwaltete Tabellenfeatures ordnungsgemäß funktionieren.
Erstellen einer verwalteten Tabelle
Um eine verwaltete Tabelle zu erstellen, müssen Sie:
-
USE SCHEMAauf dem Schema der übergeordneten Tabelle. -
USE CATALOGauf dem übergeordneten Katalog der Tabelle -
CREATE TABLEauf dem Schema der übergeordneten Tabelle.
Verwenden Sie die folgende SQL-Syntax, um eine leere verwaltete Tabelle mit SQL zu erstellen. Ersetzen Sie die folgenden Platzhalterwerte:
-
<catalog-name>: Der Name des Katalogs, der die Tabelle enthalten wird. -
<schema-name>: Der Name des Schemas, der die Tabelle enthält. -
<table-name>: Ein Tabellenname. -
<column-specification>: Name und Datentyp jeder Spalte.
-- Create a managed Delta table
CREATE TABLE <catalog-name>.<schema-name>.<table-name>
(
<column-specification>
);
-- Create a managed Iceberg table
CREATE TABLE <catalog-name>.<schema-name>.<table-name>
(
<column-specification>
)
USING iceberg;
Um die Leistung bei Lese- und Schreibvorgängen aufrechtzuerhalten, führt Azure Databricks regelmäßig Vorgänge aus, um verwaltete Iceberg-Tabellenmetadaten zu optimieren. Diese Aufgabe wird mithilfe serverloser Berechnungen ausgeführt, die MODIFY Berechtigungen für die Iceberg-Tabelle haben. Dieser Vorgang schreibt nur in die Metadaten der Tabelle, und das Berechnungssystem verwaltet die Berechtigungen für die Tabelle nur für die Dauer des Auftrags.
Note
Um eine Iceberg-Tabelle zu erstellen, geben Sie explizit an USING iceberg. Andernfalls erstellt Azure Databricks standardmäßig eine Delta Lake-Tabelle.
Sie können verwaltete Tabellen aus Abfrageergebnissen oder DataFrame-Schreibvorgängen erstellen. Die folgenden Artikel demonstrieren einige der vielen Muster, die Sie verwenden können, um eine verwaltete Tabelle auf Azure Databricks zu erstellen:
- CREATE TABLE [UNTER VERWENDUNG VON]
- CREATE TABLE LIKE
- Erstellen oder ändern Sie eine Tabelle durch Datei-Upload
Löschen einer verwalteten Tabelle
Zum Löschen einer verwalteten Tabelle benötigen Sie Folgendes:
-
MANAGEauf der Tabelle oder Sie müssen der Tabellenbesitzer sein. -
USE SCHEMAauf dem Schema der übergeordneten Tabelle. -
USE CATALOGauf dem übergeordneten Katalog der Tabelle
Führen Sie den folgenden SQL-Befehl aus, um eine verwaltete Tabelle zu löschen:
DROP TABLE IF EXISTS catalog_name.schema_name.table_name;
Unity Catalog unterstützt den UNDROP TABLE Befehl zum Wiederherstellen verworfener verwalteter Tabellen für 8 Tage. Nach 8 Tagen markiert Azure Databricks die zugrunde liegenden Daten zur Löschung aus Ihrem Cloud-Tenant und entfernt Dateien im Rahmen der automatisierten Tabellenwartung. Siehe UNDROP.