Menggunakan Apache Spark dengan katalog runtime Lakehouse

Apache Spark terhubung ke Lakehouse tanpa batas melalui katalog runtime Lakehouse. Integrasi ini menggunakan endpoint katalog REST Apache Iceberg untuk menyediakan antarmuka standar guna menemukan dan mengelola tabel Apache Iceberg.

Untuk memulai, lihat panduan berikut:

Properti konfigurasi Spark

Konfigurasikan sesi Spark atau pengiriman tugas Anda dengan properti berikut untuk terhubung ke endpoint katalog REST Apache Iceberg:

Properti Nilai Deskripsi
spark.sql.catalog.CATALOG_NAME org.apache.iceberg.spark.SparkCatalog Mendaftarkan implementasi katalog Apache Iceberg Spark.
spark.sql.catalog.CATALOG_NAME.type rest Menentukan jenis katalog REST.
spark.sql.catalog.CATALOG_NAME.uri https://biglake.googleapis.com/iceberg/v1/restcatalog Menentukan URI endpoint katalog REST Apache Iceberg di katalog runtime Lakehouse. Untuk merutekan permintaan ke endpoint regional, gunakan https://biglake.LOCATION.rep.googleapis.com/iceberg/v1/restcatalog.
spark.sql.catalog.CATALOG_NAME.warehouse bl://projects/PROJECT_ID/catalogs/CATALOG_ID Menentukan jalur warehouse untuk katalog multi-bucket di katalog runtime Lakehouse. Untuk katalog bucket tunggal, gunakan gs://CLOUD_STORAGE_BUCKET_NAME.
spark.sql.catalog.CATALOG_NAME.header.x-goog-user-project PROJECT_ID Menentukan project ID Google Cloud untuk penagihan dan kuota pada permintaan katalog runtime Lakehouse.
spark.sql.catalog.CATALOG_NAME.rest.auth.type org.apache.iceberg.gcp.auth.GoogleAuthManager Mengonfigurasi autentikasi Google Cloud untuk endpoint katalog REST Apache Iceberg.
spark.sql.catalog.CATALOG_NAME.io-impl org.apache.iceberg.gcp.gcs.GCSFileIO Menentukan implementasi FileIO Cloud Storage untuk Apache Iceberg. Wajib diisi saat menggunakan mode penjualan kredensial.
spark.sql.catalog.CATALOG_NAME.header.X-Iceberg-Access-Delegation vended-credentials Meminta kredensial penyimpanan jangka pendek dengan cakupan yang dipersempit dari katalog runtime Lakehouse selama pemuatan tabel saat menggunakan mode pemberian kredensial sementara.
spark.sql.extensions org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions Mengaktifkan ekstensi dan pengoptimalan SQL Apache Iceberg di Spark.
spark.sql.defaultCatalog CATALOG_NAME Opsional: menetapkan katalog default untuk sesi Spark.

Ganti kode berikut:

  • CATALOG_NAME: ID nama katalog yang dikonfigurasi dalam sesi Spark Anda (misalnya, my_catalog).

  • LOCATION: region Google Cloud tempat katalog Anda berada saat menggunakan endpoint regional (misalnya, us-central1).

  • PROJECT_ID: Project ID Google Cloud Anda.

  • CATALOG_ID: ID katalog Anda di katalog runtime Lakehouse.

  • CLOUD_STORAGE_BUCKET_NAME: nama bucket Cloud Storage yang terkait dengan katalog bucket tunggal.

Untuk mengetahui detail konfigurasi selengkapnya, lihat Mengonfigurasi aplikasi klien dan dokumentasi Apache Iceberg Spark resmi.