共用方式為


整合 OneLake 與 Azure Databricks

此案例示範如何透過 Azure Databricks 連線到 OneLake。 完成本教學課程之後,您將能夠從 Azure Databricks 工作區讀取和寫入 Microsoft Fabric Lakehouse。

必要條件

線上之前,您必須具備:

  • 網狀架構工作區和 Lakehouse。
  • 進階 Azure Databricks 工作區。 只有進階 Azure Databricks 工作區支援此案例所需的 Microsoft Entra 認證傳遞。

設定 Databricks 工作區

  1. 開啟您的 Azure Databricks 工作區,然後選取 [建立>叢集]。

  2. 若要使用 Microsoft Entra 身分識別向 OneLake 進行驗證,您必須在 [進階選項] 中啟用叢集上的 Azure Data Lake 儲存體 (ADLS) 認證傳遞。

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

    注意

    您也可以使用服務主體將 Databricks 連線到 OneLake。 如需使用服務主體驗證 Azure Databricks 的詳細資訊,請參閱 管理服務主體

  3. 使用您慣用的參數建立叢集。 如需建立 Databricks 叢集的詳細資訊,請參閱 設定叢集 - Azure Databricks

  4. 開啟筆記本,並將其聯機至新建立的叢集。

撰寫筆記本

  1. 流覽至您的 Fabric Lakehouse,並將 Azure Blob 檔案系統 (ABFS) 路徑複製到您的 Lakehouse。 您可以在 [ 屬性 ] 窗格中找到它。

    注意

    當讀取和寫入 ADLS Gen2 和 OneLake 時,Azure Databricks 僅支援 Azure Blob 文件系統 (ABFS) 驅動程式: abfss://myWorkspace@onelake.dfs.fabric.microsoft.com/

  2. 在 Databricks 筆記本中儲存 Lakehouse 的路徑。 此 Lakehouse 是您稍後撰寫已處理資料的位置:

    oneLakePath = 'abfss://myWorkspace@onelake.dfs.fabric.microsoft.com/myLakehouse.lakehouse/Files/'
    
  3. 將數據從 Databricks 公用數據集載入數據框架。 您也可以從 Fabric 中的其他位置讀取檔案,或從您已經擁有的另一個 ADLS Gen2 帳戶中選擇檔案。

    yellowTaxiDF = spark.read.format("csv").option("header", "true").option("inferSchema", "true").load("/databricks-datasets/nyctaxi/tripdata/yellow/yellow_tripdata_2019-12.csv.gz")
    
  4. 篩選、轉換或準備您的數據。 在此案例中,您可以修剪數據集以加快載入速度、與其他數據集聯結,或篩選為特定結果。

    filteredTaxiDF = yellowTaxiDF.where(yellowTaxiDF.fare_amount<4).where(yellowTaxiDF.passenger_count==4)
    display(filteredTaxiDF)
    
  5. 使用 OneLake 路徑將篩選的數據框架寫入 Fabric Lakehouse。

    filteredTaxiDF.write.format("csv").option("header", "true").mode("overwrite").csv(oneLakePath)
    
  6. 藉由讀取新載入的檔案,測試您的數據是否已成功寫入。

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

恭喜! 您現在可以使用 Azure Databricks 在 Fabric 中讀取和寫入數據。