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.
Fremdtabellen, die manchmal als Verbundtabellen bezeichnet werden, sind Tabellen, die mithilfe des Unity-Katalogs als Teil eines fremden Katalogs registriert sind. Fremde Tabellen enthalten Daten und Metadaten, die von externen Systemen verwaltet werden, und Unity Catalog fügt Datengovernance hinzu, um diese Tabellen abzufragen.
Azure Databricks unterstützt die folgenden Methoden zum Registrieren fremder Tabellen:
- Abfrageverbund verwendet sichere JDBC-Verbindungen, um mit externen Datensystemen wie PostgreSQL und MySQL zu federieren.
- Der Katalogverbund verbindet externe Kataloge, z. B. einen Hive-Metastore oder snowflake Horizon-Katalog, um Daten direkt im Dateispeicher abzufragen.
Important
Aus Gründen der Abwärtskompatibilität mit älteren Apache Spark- und Azure Databricks-Workloads geben Fremdtabellen in einem Hive-Metaspeicher Metadaten aus dem Hive-Metaspeicher zurück, einschließlich der Angabe, ob es sich bei der Tabelle um eine verwaltete Hive-Tabelle oder eine externe Strukturtabelle handelt.
Wann Fremdtabellen verwendet werden sollten
Fremdtabellen bieten Flexibilität bei der Integration von Azure Databricks in vorhandene Datensysteme oder die Migration von älteren Systemen.
Viele Fremdtabellen dienen als temporäre Lösung für den direkten Zugriff auf Daten, die nicht von Azure Databricks verwaltet werden, ohne dass Datenmigration oder Codeumgestaltung für upstream-ETL-Workflows erforderlich ist. Databricks empfiehlt die Migration von Datensätzen, die produktive Workloads unterstützen oder häufig abgefragt werden, in von Unity Catalog verwaltete Tabellen. Verwaltete Tabellen bieten die beste Leistung und verfügen über viele integrierte Optimierungen. Siehe Fremdtabellen mit SQL.
Der Abfrageverbund ist eine ergänzende Lösung zum Laden von Daten aus externen Datensystemen, die von Lakeflow Connect nicht unterstützt werden. Databricks empfiehlt die Verwendung materialisierter Ansichten, um Fremdtabellen in den Unity-Katalog zu replizieren. Siehe Laden von Daten aus Fremdtabellen mit materialisierten Ansichten.
Erstellen von oder Schreiben in Fremdtabellen
Wenn Sie über ausreichende Rechte verfügen und Ihr Arbeitsbereich mit einem internen Verbund-Hive-Metaspeicher konfiguriert ist, können Sie fremde Tabellen erstellen oder schreiben, die von diesem internen Verbund-Hive-Metaspeicher unterstützt werden. Der externe Verbund-Hive-Metastore und alle fremden Tabellen, auf die über die Lakehouse Federation zugegriffen wird, sind schreibgeschützt.
Obwohl Fremdtabellen schreibgeschützt sind, zeigt das Feld "Aktualisiert nach " den Benutzer an, der die letzte Metadatenaktualisierung ausgelöst hat. Azure Databricks aktualisiert während Abfragen automatisch Fremdtabellenmetadaten, wenn erkannt wird, dass die Metadaten veraltet sind. Daher zeigt das Feld "Aktualisiert nach " die session_user Person an, die die Abfrage ausgeführt hat, obwohl dieser Benutzer die zugrunde liegenden Daten nicht geändert hat.
Azure Databricks verwaltet die Metadaten, Daten oder Semantik nicht für Schreibvorgänge in Fremdtabellen. Fremdtabellen können durch ein ACID-kompatibles Format wie Delta Lake oder Apache Iceberg unterstützt werden, bieten jedoch keine transaktionsbezogenen Garantien für verwaltete Tabellen im Unity-Katalog.
Die meisten Azure Databricks-Optimierungen für Abfrageleistung, verbesserte Schreibgeschwindigkeit, Datensprung und nur Metadatenabfragen erfordern Unity-Katalog. Databricks empfiehlt, die Lese- und Schreibabfrageleistung zwischen fremdtabellen und verwalteten Tabellen im Unity-Katalog mithilfe der neuesten Databricks-Runtime-Version zu vergleichen, um Latenz- und Kostenunterschiede auszuwerten. Siehe verwaltete Tabellen des Unity-Katalogs für Delta Lake und Apache Iceberg.