Integrieren von OneLake in Azure Databricks

In diesem Szenario erfahren Sie, wie Sie mit Azure Databricks eine Verbindung mit OneLake herstellen. Nach Abschluss dieses Tutorials können Sie ein Microsoft Fabric-Lakehouse aus Ihrem Azure Databricks-Arbeitsbereich lesen und schreiben.

Voraussetzungen

Bevor Sie beginnen können, benötigen Sie Folgendes:

  • Einen Fabric-Arbeitsbereich und ein Lakehouse
  • Einen Azure Databricks-Premium-Arbeitsbereich. Nur Azure Databricks-Premium-Arbeitsbereiche unterstützen das Microsoft Entra Passthrough, das für dieses Szenario erforderlich ist.

Einrichten Ihres Databricks-Arbeitsbereichs

  1. Öffnen Sie Ihren Azure Databricks-Arbeitsbereich, und wählen Sie Erstellen>Cluster aus.

  2. Um sich mit Ihrer Microsoft Entra Identität bei OneLake zu authentifizieren, müssen Sie das Azure Data Lake Storage (ADLS) Credential-Passthrough in Ihrem Cluster in den erweiterten Optionen aktivieren.

    Screenshot showing where to select Create cluster in the Advanced options screen.

    Hinweis

    Sie können auch mit einem Dienstprinzipal eine Verbindung zwischen Databricks und OneLake erstellen. Weitere Informationen zum Authentifizieren von Azure Databricks mithilfe eines Dienstprinzipals finden Sie unter Dienstprinzipale verwalten.

  3. Erstellen Sie den Cluster mit Ihren bevorzugten Parametern. Weitere Informationen zum Erstellen eines Databricks-Clusters finden Sie unter Konfigurieren von Clustern – Azure Databricks.

  4. Öffnen Sie ein Notebook, und erstellen Sie eine Verbindung mit Ihrem neu erstellten Cluster.

Erstellen Ihres Notebooks

  1. Navigieren Sie zu Ihrem Fabric-Lakehouse, und kopieren Sie den Azure Blob Filesystem (ABFS)-Pfad zu Ihrem Lakehouse. Sie finden sie im Bereich Eigenschaften.

    Hinweis

    Azure Databricks unterstützt den Azure Blob Filesystem (ABFS)-Treiber nur beim Lesen und Schreiben in ADLS Gen2 und OneLake: abfss://myWorkspace@onelake.dfs.fabric.microsoft.com/.

  2. Speichern Sie den Pfad zu Ihrem Lakehouse in Ihrem Databricks-Notebook. In diesem Lakehouse schreiben Sie später Ihre verarbeiteten Daten:

    oneLakePath = 'abfss://myWorkspace@onelake.dfs.fabric.microsoft.com/myLakehouse.lakehouse/Files/'
    
  3. Laden Sie Daten aus einem öffentlichen Databricks-Dataset in einen Dataframe. Sie können auch eine Datei von einem anderen Ort in Fabric lesen oder eine Datei aus einem anderen ADLS Gen2-Konto auswählen, das Sie bereits besitzen.

    yellowTaxiDF = spark.read.format("csv").option("header", "true").option("inferSchema", "true").load("/databricks-datasets/nyctaxi/tripdata/yellow/yellow_tripdata_2019-12.csv.gz")
    
  4. Filtern oder transformieren Sie Ihre Daten oder bereiten Sie sie auf. In diesem Szenario können Sie Ihr Dataset für ein schnelleres Laden kürzen, es mit anderen Datasets verknüpfen oder nach bestimmten Ergebnissen filtern.

    filteredTaxiDF = yellowTaxiDF.where(yellowTaxiDF.fare_amount<4).where(yellowTaxiDF.passenger_count==4)
    display(filteredTaxiDF)
    
  5. Schreiben Sie Ihren gefilterten Dataframe mithilfe Ihres OneLake-Pfads in Ihr Fabric-Lakehouse.

    filteredTaxiDF.write.format("csv").option("header", "true").mode("overwrite").csv(oneLakePath)
    
  6. Testen Sie, dass Ihre Daten erfolgreich geschrieben wurden, indem Sie die neu geladene Datei lesen.

    lakehouseRead = spark.read.format('csv').option("header", "true").load(oneLakePath)
    display(lakehouseRead.limit(10))
    

Herzlichen Glückwunsch! Sie können jetzt Daten mit Azure Databricks in Fabric lesen und schreiben.