Apache Spark מתחבר ל-Lakehouse ללא גבולות דרך הקטלוג הייעודי לזמן ריצה של Lakehouse. השילוב הזה משתמש בנקודת הקצה של קטלוג REST של Apache Iceberg כדי לספק ממשק סטנדרטי לזיהוי ולניהול של טבלאות Apache Iceberg.
כדי להתחיל, אפשר לעיין במדריכים הבאים:
מאפייני ההגדרות של Spark
כדי להתחבר לנקודת הקצה של קטלוג REST של Apache Iceberg, מגדירים את המאפיינים הבאים בסשן של Spark או בשליחת המשימה:
| מאפיין (property) | ערך | תיאור |
|---|---|---|
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 |
מציין את ה-URI של נקודת הקצה של קטלוג REST של Apache Iceberg בקטלוג הייעודי לזמן ריצה של Lakehouse. כדי לנתב בקשות לנקודת קצה אזורית, משתמשים ב-https://biglake.LOCATION.rep.googleapis.com/iceberg/v1/restcatalog. |
spark.sql.catalog.CATALOG_NAME.warehouse |
bl://projects/PROJECT_ID/catalogs/CATALOG_ID |
מציין את הנתיב למחסן הנתונים של קטלוג עם כמה קטגוריות בקטלוג הייעודי לזמן ריצה של Lakehouse. בקטלוג עם קטגוריה אחת, משתמשים ב-gs://CLOUD_STORAGE_BUCKET_NAME. |
spark.sql.catalog.CATALOG_NAME.header.x-goog-user-project |
PROJECT_ID |
מציין את מזהה הפרויקט ב- Google Cloud לחיוב ולמכסות בבקשות לקטלוג ייעודי לזמן ריצה של Lakehouse. |
spark.sql.catalog.CATALOG_NAME.rest.auth.type |
org.apache.iceberg.gcp.auth.GoogleAuthManager |
מגדיר את האימות של Google Cloud לנקודת הקצה של קטלוג REST של Apache Iceberg. |
spark.sql.catalog.CATALOG_NAME.io-impl |
org.apache.iceberg.gcp.gcs.GCSFileIO |
מציינת את ההטמעה של FileIO ב-Cloud Storage בשביל Apache Iceberg. חובה כשמשתמשים במצב של הפצת פרטי כניסה. |
spark.sql.catalog.CATALOG_NAME.header.X-Iceberg-Access-Delegation |
vended-credentials |
שליחת בקשה לפרטי כניסה לטווח קצר עם היקף מצומצם לאחסון מהקטלוג הייעודי לזמן ריצה של Lakehouse, בזמן טעינת הטבלה כשמשתמשים במצב הנפקת פרטי כניסה. |
spark.sql.extensions |
org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions |
הפעלת תוספי SQL ואופטימיזציות של Apache Iceberg ב-Spark. |
spark.sql.defaultCatalog |
CATALOG_NAME |
אופציונלי: הגדרת הקטלוג שמשמש כברירת מחדל לסשן Spark. |
מחליפים את מה שכתוב בשדות הבאים:
CATALOG_NAME: מזהה שם הקטלוג שהוגדר בסשן Spark (לדוגמה,my_catalog).
LOCATION: האזור ב- Google Cloud שבו נמצא הקטלוג, כשמשתמשים בנקודת קצה אזורית (לדוגמה,us-central1).
PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
CATALOG_ID: המזהה של הקטלוג בקטלוג הייעודי לזמן ריצה של Lakehouse.
CLOUD_STORAGE_BUCKET_NAME: השם של הקטגוריה ב-Cloud Storage שמשויכת לקטלוג של קטגוריה אחת.
פרטים נוספים על ההגדרה זמינים במאמר הגדרת אפליקציית לקוח ובמסמכי התיעוד הרשמיים של Apache Iceberg Spark.