Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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 Delta-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 beschreibt nur 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 Unity-Katalog-Tabellen optimieren Speicherkosten und Abfragegeschwindigkeiten und ermöglichen die Interoperabilität mit Drittanbietertools für Delta Lake und Apache Iceberg. Um die Datenverwaltung und -leistung zu vereinfachen, verwenden diese verwalteten Tabellen KI-gestützte Technologien, z. B. Dateigrößenkomprimierung und intelligente Statistikensammlung.
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? |
|---|---|---|---|
| Katalog-Commits | Ermöglicht Transaktionen mit mehreren Anweisungen über Tabellen hinweg, eine schnellere Abfrageplanung durch die direkte Bereitstellung von Metadaten aus Unity Catalog, durchsetzbare Änderungen an Schemata und Constraints sowie sichere Schreibvorgänge aus externen Engines. | Nein. | Ja. Legen Sie die delta.feature.catalogManaged Tabelleneigenschaft fest. Siehe Katalog-Commits aktivieren. |
| Prädiktive Optimierung | Die prädiktive Optimierung optimiert mithilfe von KI automatisch Ihr Datenlayout und Ihre Rechenressourcen, ohne dass manuelle Wartungsvorgänge erforderlich sind. 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 ermöglicht Azure Databricks standardmäßig eine vorausschauende Optimierung. Überprüfen Sie, ob die Vorhersageoptimierung aktiviert ist. |
Ja. Siehe "Predictive Optimization aktivieren". |
| Mehrfachanweisungs-Transaktionen | Ermöglicht ihnen das Ausführen mehrerer SQL-Anweisungen in einer oder mehreren Tabellen als einzelnes atomisches Commit mit ACID-Garantien. Alle Änderungen sind erfolgreich, oder es wird ein Rollback ausgeführt. Wird für gespeicherte Prozeduren und SQL-Skripting in unternehmenskritischen Lagerarbeitslasten verwendet. Transaktionen, die in verwaltete Delta Lake-Tabellen schreiben, befinden sich in der öffentlichen Vorschau. Transaktionen, die in verwaltete Apache Iceberg-Tabellen schreiben, befinden sich in der privaten Vorschau. |
Nein. | Ja. Verwenden Sie BEGIN ATOMIC ... END; für nicht-interaktive Transaktionen oder BEGIN TRANSACTION; ... COMMIT; für interaktive Transaktionen. Siehe Transaktionsmodi. |
| Automatische Flüssigkeitsclusterung | Bei Tabellen mit predictive Optimierung ermöglicht das automatische 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. | Ja. | Nein. Die Zwischenspeicherung von Metadaten ist für verwaltete Tabellen immer aktiviert. |
| Volltext-Suchindizes | Volltextsuchindizes beschleunigen Teilzeichenfolgen- und Schlüsselwortsuchvorgänge in Textspalten verwalteter Tabellen. Wenn ein Index angewendet wird, überspringt Azure Databricks Dateien, die keine übereinstimmenden Zeilen enthalten können, und reduziert die Menge der gescannten Daten. Volltextindizes beschleunigen Teilstring- und Wortsuchen mithilfe der Funktionen search und isearch.Volltext-Suchindizes befinden sich in Der Betaversion und erfordern Databricks Runtime 18.2 und höher. |
Nein. | Ja. Erstellen Sie mit CREATE INDEX (Sekundär) oder CREATE SEARCH INDEX (Volltext). |
Automatische Dateilöschung nach einem DROP TABLE Befehl |
Wenn Sie eine verwaltete Tabelle DROP, löscht Azure Databricks die Daten im Cloudspeicher nach 8 Tagen, um Ihre Speicherkosten zu senken. Bei externen Tabellen müssen Sie die Dateien manuell aus Ihrem Speicher-Bucket löschen. | Ja. | 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 Lese-, Schreib- und Erstellungszugriff für Delta-Clients auf verwaltete Delta-Tabellen.
- Iceberg REST Catalog (IRC):Bietet Lese-, Schreib- und Erstellungszugriff für Iceberg-Clients für 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.