Verbinding maken met externe databases en catalogi

Azure Databricks biedt meerdere opties voor het opvragen en openen van gegevens in externe databases en catalogi zonder uw gegevens te migreren. Kies de benadering op basis van uw toegangspatroon, governancevereisten, schrijfbehoeften en rekenvoorkeuren.

Een benadering kiezen

In de volgende tabel worden queryfederatie en catalogusfederatie vergeleken, zodat u de juiste benadering kunt kiezen.

Approach Description Query uitvoeren Schrijfondersteuning Governance Ideaal voor
Query-federatie Voer federatieve query’s uit op externe relationele databases met behulp van JDBC, met automatische query-pushdown en Unity Catalog-governance via externe catalogi. Doorgestuurd naar de externe database via JDBC. De query wordt uitgevoerd op zowel Azure Databricks als externe berekening. Niet ondersteund (alleen lezen). Externe catalogus van Unity Catalog met toegangsbeheer op tabelniveau. Ad-hocrapportage, BI en proof-of-concept-toegang tot operationele databases.
Catalogusfederatie Verbind externe catalogusplatforms (zoals Hive Metastore, AWS Glue of Snowflake) zodat u rechtstreeks in objectopslag query's kunt uitvoeren op hun gegevens. Wordt alleen rechtstreeks uitgevoerd op objectopslag met Azure Databricks-rekenclusters. Kostenefficiënter en beter geoptimaliseerd qua prestaties dan queryfederatie. Niet ondersteund (alleen lezen). Externe catalogus van Unity Catalog met toegangsbeheer op tabelniveau. Migreren naar Unity Catalog incrementeel of het onderhouden van een hybride model op lange termijn met gegevens in een externe catalogus.

Lakehouse Federatie

Lakehouse Federation is het Azure Databricks-platform voor queryfederatie. Het biedt gecontroleerde alleen-leestoegang tot externe gegevens via federatieve catalogi van Unity Catalog, met automatische query-pushdown en fijnmazige toegangscontrole op tabelniveau.

Er zijn twee soorten Lakehouse-federatie: queryfederatie en catalogusfederatie.

Queryfederatie vergeleken met catalogusfederatie

In de volgende tabel worden de belangrijkste verschillen tussen queryfederatie en catalogusfederatie beschreven.

Approach Querypad Gebruiksituatie Overzicht van stappen
Query-federatie Unity Catalog-queries worden naar de externe database gepusht met behulp van JDBC. De query wordt zowel in Azure Databricks uitgevoerd als met behulp van externe rekenkracht.
  • U hebt ad-hoc-rapportage of proof-of-concept-toegang nodig tot operationele gegevens die zijn opgeslagen in externe databases.
  • U wilt de verplaatsing van gegevens minimaliseren en live toegang tot externe systemen behouden.

Wanneer uw bron ondersteuning biedt voor Zowel Lakehouse Federation als Lakeflow Connect, raadt Azure Databricks Lakeflow Connect aan als prestaties op hogere gegevensvolumes en lagere latentie prioriteiten zijn.
  • Maak een verbinding in Unity Catalog met uw toegangsreferenties en JDBC-URL.
  • Maak een externe catalogus met behulp van de verbinding.
  • Verleen rechten aan gebruikers voor tabellen in de vreemde catalogus.
  • Voer queries uit. Deze worden naar de externe database doorgestuurd.
Catalogusfederatie Unity Catalog-query's hebben rechtstreeks toegang tot de vreemde tabel in objectopslag. Catalogusfederatie is beschikbaar voor platforms die directe toegang tot hun catalogus- en opslagservices ondersteunen. De query wordt alleen uitgevoerd op Azure Databricks compute, wat betekent dat catalogusfederatie rendabeler en beter is geoptimaliseerd voor prestaties dan queryfederatie.
  • Je migreert naar Unity Catalog, maar moet stapsgewijs gegevens uit een externe catalogus opnemen.
  • U wilt een hybride model voor de lange termijn waarin sommige gegevens in een externe catalogus blijven en sommige gegevens worden beheerd door Unity Catalog.
  • Maak een verbinding in Unity Catalog voor toegang tot de externe catalogus.
  • Maak een opslagreferentie en een externe locatie voor de tabelpaden.
  • Maak een externe catalogus met behulp van de verbinding en de externe locatie.
  • Verleen rechten aan gebruikers voor tabellen in de vreemde catalogus.
  • Voer queries uit. Deze worden rechtstreeks uitgevoerd op de objectopslag.

Ondersteunde gegevensbronnen

Maak verbinding met de volgende bronnen met behulp van queryfederatie:

Maak verbinding met de volgende bronnen met behulp van catalogusfederatie:

Spark-gegevensbronnen

Met de Spark-gegevensbron-API kunt u rechtstreeks vanuit Azure Databricks lezen en schrijven naar externe databases. Gebruik deze functie wanneer Lakehouse Federation uw bron niet ondersteunt, wanneer u schrijftoegang nodig hebt of als u meer controle nodig hebt over de uitvoering van query's en parallelle uitvoering.

Databricks Runtime bevat gebundelde connectors voor algemene databases, zoals PostgreSQL, SQL Server, MySQL, Snowflake en Redshift. Voor elke JDBC-compatibele database kunt u een JDBC Unity Catalog-verbinding gebruiken om uw eigen stuurprogramma te gebruiken met gecentraliseerd referentiebeheer. U kunt ook connectors van derden installeren op toegewezen clusters of volledig aangepaste connectors bouwen in Python met behulp van de PySpark DataSource-API.

Zie Spark-gegevensbronnen voor installatie-instructies en volledige details.

Aanvullende bronnen