הקטלוג הייעודי לזמן ריצה של Lakehouse מאפשר לכם לשתף נתונים בין Apache Spark, Apache Hive ו-BigQuery באמצעות מטא-נתונים מאוחדים בלי שרת (serverless). שכבת המטא-נתונים המנוהלת הזו מבטלת את הצורך ב-metastore נפרד של Hive באירוח עצמי לעומסי עבודה בקוד פתוח.
השילוב הזה עבר אופטימיזציה לתאימות ל-Apache Spark ExternalCatalog ותומך בקבוצת משנה של ממשק Hive Metastore. כדי לקבוע אם עומסי העבודה שלכם תלויים בתכונות שלא נתמכות, כמו טרנזקציות, דחיסות או Kerberos, עיינו בהשוואת התכונות ובמגבלות.
איך Hive משתלב עם קטלוג זמן הריצה של Lakehouse
נקודת הקצה של Hive metastore מנהלת טבלאות רגילות של Apache Hive ו-Spark (באמצעות Hive SerDes או מקורות נתונים של Spark) ולא טבלאות של Apache Iceberg. כדי לפשט את החיבור של משימות Spark לנקודת הקצה הזו, תמונות של Managed Service for Apache Spark מוגדרות מראש עם ספריות הלקוח והתלות הדרושות.
ברצף הבא מתואר איך Spark מתחבר למטא-נתונים:
- Apache Spark מתחבר לקטלוגים של מטא-נתונים חיצוניים באמצעות ממשק
IMetastoreClientהרגיל של Apache Hive. - הקטלוג הייעודי לזמן ריצה של Lakehouse מטמיע
IMetastoreClientבהתאמה אישית כדי לספק שירות מטא-נתונים מנוהל לחלוטין למטא-נתונים של Spark ו-Hive. - סביבות זמן ריצה מוגדרות מראש של Managed Service for Apache Spark משתמשות אוטומטית בלקוח המותאם אישית הזה כדי לנתב פעולות של מטא-נתונים ישירות אל ה-metastore.
אחרי ההגדרה, אתם יכולים להריץ שאילתות על הטבלאות שנוצרו ב-Spark ישירות ב-BigQuery. השילוב הזה תומך בפורמטים שונים של אחסון – כמו Parquet, ORC, Avro ו-Delta Lake – וגם במיפויים ספציפיים של סוגי נתונים בין Spark ל-BigQuery, ובמפתחות הצפנה בניהול הלקוח (CMEK) לנתונים שמאוחסנים ב-Cloud Storage.
איך נקודת הקצה של קטלוג Hive משתלבת עם Google Cloud שירותים
כדי להבין איך הנתונים מנוהלים ב-Lakehouse ללא גבולות, אתם יכולים לקרוא איך הארכיטקטורה של קטלוג Hive משתלבת עם שירותי Google Cloud . במקום לתחזק מאגרי מטא-נתונים באירוח עצמי, עומסי העבודה שלכם בקוד פתוח מתחברים לקטלוג של Lakehouse בזמן הריצה כדי לנהל את ההגדרות של מסדי נתונים וטבלאות ב-Hive, תוך אחסון קובצי הנתונים הבסיסיים ישירות בספריות של מחסן הנתונים ב-Cloud Storage.
בתרשים הבא אפשר לראות איך מנועי מחשוב כמו Managed Service for Apache Spark משתמשים בקטלוג הייעודי לזמן ריצה של Lakehouse כדי לנהל מטא-נתונים של טבלאות, בזמן שהם קוראים וכותבים קובצי נתונים בסיסיים ישירות ב-Hive.
השוואה בין תכונות של Hive Metastore
בטבלה הבאה מוצגת השוואה בין ישויות ופעולות ב-Hive Metastore וב-Lakehouse:
| ישות או פעולה | Hive Metastore | קטלוג ייעודי לזמן ריצה של Lakehouse |
|---|---|---|
| קטלוג | ✅ | ✅ |
| מסד נתונים (יצירה, מחיקה, עדכון) | ✅ | ✅ |
| טבלה (יצירה, מחיקה, עדכון) | ✅ | ✅ |
| מחיצה (הוספה, הסרה, עדכון) | ✅ | ✅ |
| הרשאות בטבלה | ✅ | ✅ (באמצעות ניהול זהויות והרשאות גישה (IAM)) |
| הרשאות למחיצה | ✅ | ✅ (באמצעות IAM) |
| פונקציות בהגדרת המשתמש | ✅ | לא נתמך |
| חלוקה לקטגוריות / הטיה של עמודות | ✅ | לא נתמך |
| נתונים סטטיסטיים של עמודות בטבלה ובמחיצה | ✅ | לא נתמך |
| מגבלות מרכזיות | ✅ | לא נתמך |
| טוקנים של הקצאה (Kerberos) | ✅ | לא נתמך |
| הרשאות לעמודות | ✅ | לא נתמך |
| תפקידים | ✅ | לא נתמך |
| תוכניות משאבים של Workload Manager | ✅ | לא נתמך |
| טרנזקציות ודחיסות | ✅ | לא נתמך |
העברה מ-Dataproc Metastore
במאמר העברת מטא-נתונים מ-Dataproc Metastore ל-Lakehouse מוסבר איך לשדרג ולהעביר את המטא-נתונים מ-Dataproc Metastore לקטלוג הייעודי לזמן ריצה של Lakehouse.
המאמרים הבאים
- שימוש ב-Spark וב-Hive עם קטלוג זמן הריצה של Lakehouse.
- הגדרה של Spark עם טבלאות Delta
- שימוש בנקודות קצה אזוריות של Lakehouse.