Apache Spark se connecte au lakehouse sans frontières via le catalogue d'environnements d'exécution Lakehouse. Cette intégration utilise le point de terminaison du catalogue REST Apache Iceberg pour fournir une interface standard permettant de découvrir et de gérer les tables Apache Iceberg.
Pour commencer, consultez les guides suivants :
Configurer le point de terminaison du catalogue REST Apache Iceberg
Créer et interroger une table Iceberg à l'aide de la Google Cloud CLI (guide de démarrage rapide)
Configurer Spark et Hive avec le catalogue d'environnements d'exécution Lakehouse
Propriétés de configuration Spark
Configurez votre session Spark ou l'envoi de votre job avec les propriétés suivantes pour vous connecter au point de terminaison du catalogue REST Apache Iceberg :
| Propriété | Valeur | Description |
|---|---|---|
spark.sql.catalog.CATALOG_NAME |
org.apache.iceberg.spark.SparkCatalog |
Enregistre l'implémentation du catalogue Apache Iceberg Spark. |
spark.sql.catalog.CATALOG_NAME.type |
rest |
Spécifie le type de catalogue REST. |
spark.sql.catalog.CATALOG_NAME.uri |
https://biglake.googleapis.com/iceberg/v1/restcatalog |
Spécifie l'URI du point de terminaison du catalogue REST Apache Iceberg dans le catalogue d'environnements d'exécution Lakehouse. Pour acheminer les requêtes vers un point de terminaison régional, utilisez https://biglake.LOCATION.rep.googleapis.com/iceberg/v1/restcatalog. |
spark.sql.catalog.CATALOG_NAME.warehouse |
bl://projects/PROJECT_ID/catalogs/CATALOG_ID |
Spécifie le chemin d'accès à l'entrepôt pour un catalogue à plusieurs buckets dans le catalogue d'environnements d'exécution Lakehouse. Pour un catalogue à bucket unique, utilisez gs://CLOUD_STORAGE_BUCKET_NAME. |
spark.sql.catalog.CATALOG_NAME.header.x-goog-user-project |
PROJECT_ID |
Spécifie l'ID du projet Google Cloud pour la facturation et le quota sur les requêtes du catalogue d'environnements d'exécution Lakehouse. |
spark.sql.catalog.CATALOG_NAME.rest.auth.type |
org.apache.iceberg.gcp.auth.GoogleAuthManager |
Configure l'authentification Google Cloud pour le point de terminaison du catalogue REST Apache Iceberg. |
spark.sql.catalog.CATALOG_NAME.io-impl |
org.apache.iceberg.gcp.gcs.GCSFileIO |
Spécifie l'implémentation FileIO de Cloud Storage pour Apache Iceberg. Obligatoire lorsque vous utilisez le mode de distribution d'identifiants. |
spark.sql.catalog.CATALOG_NAME.header.X-Iceberg-Access-Delegation |
vended-credentials |
Demande des identifiants de stockage éphémères et à champ d'application réduit au catalogue d'environnements d'exécution Lakehouse lors du chargement de la table lorsque vous utilisez le mode de distribution des identifiants. |
spark.sql.extensions |
org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions |
Active les extensions et optimisations SQL Apache Iceberg dans Spark. |
spark.sql.defaultCatalog |
CATALOG_NAME |
Facultatif : définit le catalogue par défaut pour la session Spark. |
Remplacez les éléments suivants :
CATALOG_NAME: identifiant du nom de catalogue configuré dans votre session Spark (par exemple,my_catalog).LOCATION: région Google Cloud où se trouve votre catalogue lorsque vous utilisez un point de terminaison régional (par exemple,us-central1).PROJECT_ID: ID de votre projet Google Cloud .CATALOG_ID: ID de votre catalogue dans le catalogue d'environnements d'exécution Lakehouse.CLOUD_STORAGE_BUCKET_NAME: nom du bucket Cloud Storage associé à un catalogue à bucket unique.
Pour en savoir plus sur la configuration, consultez Configurer l'application cliente et la documentation officielle d'Apache Iceberg Spark.