Apache Spark 透過 Lakehouse 執行階段目錄連線至無邊界湖倉。這項整合功能會使用 Apache Iceberg REST 目錄端點,提供探索及管理 Apache Iceberg 資料表的標準介面。
如要開始使用,請參閱下列指南:
Spark 設定屬性
使用下列屬性設定 Spark 工作階段或工作提交作業,連線至 Apache Iceberg REST 目錄端點:
| 屬性 | 值 | 說明 |
|---|---|---|
spark.sql.catalog.CATALOG_NAME |
org.apache.iceberg.spark.SparkCatalog |
註冊 Apache Iceberg Spark 目錄實作。 |
spark.sql.catalog.CATALOG_NAME.type |
rest |
指定 REST 目錄類型。 |
spark.sql.catalog.CATALOG_NAME.uri |
https://biglake.googleapis.com/iceberg/v1/restcatalog |
指定 Lakehouse 執行階段目錄中的 Apache Iceberg REST 目錄端點 URI。如要將要求轉送至區域端點,請使用 https://biglake.LOCATION.rep.googleapis.com/iceberg/v1/restcatalog。 |
spark.sql.catalog.CATALOG_NAME.warehouse |
bl://projects/PROJECT_ID/catalogs/CATALOG_ID |
指定 Lakehouse 執行階段目錄中,多 bucket 目錄的倉儲路徑。如果是單一 bucket 目錄,請使用 gs://CLOUD_STORAGE_BUCKET_NAME。 |
spark.sql.catalog.CATALOG_NAME.header.x-goog-user-project |
PROJECT_ID |
指定 Google Cloud 專案 ID,用於 Lakehouse 執行階段目錄要求的計費和配額。 |
spark.sql.catalog.CATALOG_NAME.rest.auth.type |
org.apache.iceberg.gcp.auth.GoogleAuthManager |
設定 Apache Iceberg REST 目錄端點的 Google Cloud 驗證。 |
spark.sql.catalog.CATALOG_NAME.io-impl |
org.apache.iceberg.gcp.gcs.GCSFileIO |
指定 Apache Iceberg 的 Cloud Storage FileIO 實作。使用憑證臨時配發模式時,必須提供這項資訊。 |
spark.sql.catalog.CATALOG_NAME.header.X-Iceberg-Access-Delegation |
vended-credentials |
使用憑證臨時配發模式時,在載入資料表期間,向 Lakehouse 執行階段目錄要求效期短、範圍縮小的儲存空間憑證。 |
spark.sql.extensions |
org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions |
在 Spark 啟用 Apache Iceberg SQL 擴充功能和最佳化功能。 |
spark.sql.defaultCatalog |
CATALOG_NAME |
選用:設定 Spark 工作階段的預設目錄。 |
更改下列內容:
CATALOG_NAME:Spark 工作階段中設定的目錄名稱 ID (例如my_catalog)。LOCATION:使用區域端點時,目錄所在的 Google Cloud 區域 (例如us-central1)。PROJECT_ID:您的 Google Cloud 專案 ID。CATALOG_ID:Lakehouse 執行階段目錄中的目錄 ID。CLOUD_STORAGE_BUCKET_NAME:與單一 bucket 目錄相關聯的 Cloud Storage bucket 名稱。
如需更多設定詳細資料,請參閱「設定用戶端應用程式」和官方 Apache Iceberg Spark 說明文件。