Herstellen einer Verbindung mit externen Datenbanken und Katalogen

Azure Databricks bietet mehrere Optionen zum Abfragen und Zugreifen auf Daten in externen Datenbanken und Katalogen, ohne Ihre Daten zu migrieren. Wählen Sie den Ansatz basierend auf Ihrem Zugriffsmuster, den Governanceanforderungen, den Schreibanforderungen und den Berechnungseinstellungen aus.

Auswählen eines Ansatzes

In der folgenden Tabelle werden Abfrageverbund und Katalogverbund verglichen, damit Sie den richtigen Ansatz auswählen können.

Description Abfrageausführung Schreibunterstützung Verwaltung Am besten geeignet für:
Abfrageverbund Führen Sie mithilfe von JDBC föderierte Abfragen gegen externe relationale Datenbanken aus – mit automatischem Abfrage-Pushdown und Unity Catalog-Governance über Fremdkataloge. Per JDBC nach unten an die externe Datenbank weitergegeben. Die Abfrage wird sowohl auf Azure Databricks als auch auf remote compute ausgeführt. Nicht unterstützt (schreibgeschützt). Unity Catalog-Fremdkatalog mit Zugriffskontrollen auf Tabellenebene Ad-hoc-Berichterstellung, BI und Machbarkeitsnachweiszugriff auf operative Datenbanken.
Katalogverbund Verbinden Sie externe Katalogplattformen (z. B. Hive Metastore, AWS Glue oder Snowflake), damit Sie ihre Daten direkt im Objektspeicher abfragen können. Wird nur auf Azure-Databricks-Compute direkt mit dem Objektspeicher ausgeführt. Kostengünstiger und leistungsoptimiert als Abfrageföderation. Nicht unterstützt (schreibgeschützt). Unity Catalog-Fremdkatalog mit Zugriffssteuerungen auf Tabellenebene. Eine inkrementelle Migration zum Unity-Katalog oder die Aufrechterhaltung eines langfristigen Hybridmodells mit Daten in einem externen Katalog.

Lakehouse-Verbund

Lakehouse Federation ist die Azure Databricks Abfrageverbundplattform. Sie bietet kontrollierten, schreibgeschützten Zugriff auf externe Daten über Fremdkataloge in Unity Catalog, mit automatischer Abfrageweiterleitung und granularen Zugriffskontrollen auf Tabellenebene.

Es gibt zwei Arten von Lakehouse Federation: Abfrageverbund und Katalogverbund.

Abfrageverbund im Vergleich zum Katalogverbund

In der folgenden Tabelle werden die wichtigsten Unterschiede zwischen Abfrageverbund und Katalogverbund beschrieben.

Abfragepfad Anwendungsfall Übersicht über die Schritte
Abfrageverbund Unity Catalog-Abfragen werden über JDBC an die Fremddatenbank weitergeleitet. Die Abfrage wird sowohl in Azure Databricks als auch mithilfe von Remote compute ausgeführt.
  • Sie benötigen Ad-hoc-Berichterstellung oder Machbarkeitsnachweiszugriff auf Betriebsdaten, die in externen Datenbanken gespeichert sind.
  • Sie möchten die Datenverschiebung minimieren und den Livezugriff auf externe Systeme beibehalten.

Wenn Ihre Quelle sowohl Lakehouse Federation als auch Lakeflow Connect unterstützt, empfiehlt Azure Databricks Lakeflow Connect, wenn die Leistung bei höheren Datenvolumes und geringerer Latenz Prioritäten sind.
  • Richten Sie eine Verbindung im Unity Catalog mit Ihren Zugangsdaten und der JDBC-URL ein.
  • Erstellen Sie einen fremden Katalog mithilfe der Verbindung.
  • Gewähren Sie Benutzern Berechtigungen für Tabellen im fremden Katalog.
  • Führen Sie Abfragen aus. Diese werden an die externe Datenbank übertragen.
Katalogverbund Unity Catalog-Abfragen greifen direkt auf die Fremdtabelle im Objektspeicher zu. Der Katalogverbund ist für Plattformen verfügbar, die direkten Zugriff auf ihre Katalog- und Speicherdienste unterstützen. Die Abfrage wird nur auf Azure Databricks Compute ausgeführt, was bedeutet, dass der Katalogverbund kostengünstiger und leistungsoptimiert ist als der Abfrageverbund.
  • Sie migrieren zu Unity Catalog, müssen jedoch schrittweise Daten einbinden, die von einem fremden Katalog verwaltet werden.
  • Sie möchten ein langfristiges Hybridmodell, bei dem einige Daten in einem externen Katalog verbleiben und einige Daten vom Unity-Katalog verwaltet werden.
  • Erstellen Sie eine Verbindung im Unity-Katalog für den Zugriff auf den externen Katalog.
  • Erstellen Sie eine Speicherberechtigung und einen externen Ort für die Tabellenpfade.
  • Erstellen Sie einen fremden Katalog mithilfe der Verbindung und des externen Speicherorts.
  • Gewähren Sie Benutzern Berechtigungen für Tabellen im fremden Katalog.
  • Führen Sie Abfragen aus. Diese werden direkt im Objektspeicher ausgeführt.

Unterstützte Datenquellen

Stellen Sie mithilfe des Abfrageverbunds eine Verbindung mit den folgenden Quellen her:

Stellen Sie mithilfe des Katalogverbunds eine Verbindung mit den folgenden Quellen her:

Spark-Datenquellen

Mit der Spark-Datenquellen-API können Sie direkt aus Azure Databricks aus externen Datenbanken lesen und schreiben. Verwenden Sie sie, wenn lakehouse Federation Ihre Quelle nicht unterstützt, wenn Sie Schreibzugriff benötigen oder wenn Sie mehr Kontrolle über die Ausführung und Parallelisierung von Abfragen benötigen.

Databricks Runtime umfasst gebündelte Connectors für gängige Datenbanken wie PostgreSQL, SQL Server, MySQL, Snowflake und Redshift. Für jede JDBC-kompatible Datenbank können Sie eine JDBC-Unity-Catalog-Verbindung verwenden, um Ihren eigenen Treiber mit zentralisierter Verwaltung von Anmeldeinformationen zu nutzen. Sie können auch Connectors von Drittanbietern auf dedizierten Clustern installieren oder vollständig benutzerdefinierte Connectors in Python mithilfe der PySpark DataSource-API erstellen.

Anweisungen zum Einrichten und vollständige Details finden Sie in Spark-Datenquellen.

Weitere Ressourcen