במסמך הזה מוגדרים המונחים והמושגים העיקריים שקשורים ל-Lakehouse for Apache Iceberg.
הדף הזה לא כולל רשימה מלאה של תכונות, אלא הוא משמש כהפניה כללית למונחים ולמושגים שמופיעים בתיעוד של Lakehouse ב-Google Cloud.
מושגי ליבה
המושגים הבאים הם הבסיס לארכיטקטורת Lakehouse של Google Cloud.
Lakehouse
מחסן נתונים מסוג Lakehouse משלב בין החיסכון בעלויות והגמישות של אגם נתונים לבין ניהול הנתונים והביצועים של מחסן נתונים. הוא מאפשר לכם לאחסן נתונים בפורמטים פתוחים ב-Cloud Storage ולהשתמש בתכונות של BigQuery, כמו אמצעי בקרה מדויקים לאבטחה ושאילתות מהירות.
אדריכלות מדליון
תבנית עיצוב נפוצה ב-data lakehouse היא ארכיטקטורת מדליון, שמארגנת את הנתונים באופן לוגי בשכבות מתקדמות של מבנה ואיכות:
- שכבת ברונזה (נתונים גולמיים): קליטה ואחסון של נתונים גולמיים בפורמטים פתוחים כמו Apache Iceberg ב-Cloud Storage.
- שכבת כסף (מנוקה): השכבה הזו מנקה, מסננת ומעשירה את הנתונים הגולמיים לטבלאות סטנדרטיות.
- שכבת הזהב (אוצרת): מספקת טבלאות ברמת העסק שעברו אוצרות מלאות וצבירה. ב-Lakehouse של Google Cloud, BigQuery משמש לעיתים קרובות להצגת שכבת הזהב לצריכה, לדיווח ולניתוח עם ביצועים גבוהים.
יכולת פעולה הדדית פתוחה
יכולת פעולה הדדית פתוחה היא היכולת של מערכות אנליטיות וטרנזקציונליות מרובות – כמו BigQuery, Apache Spark ו-Apache Flink – לפעול על עותק יחיד של נתונים בפורמטים פתוחים כמו Apache Iceberg. כך לא צריך לשכפל נתונים, ויש תצוגה עקבית של נתונים בכלים שונים.
קטלוג של סביבת זמן ריצה של Lakehouse
הקטלוג של Lakehouse runtime הוא שירות מטא-נתונים מרכזי ללא שרת (serverless) שמשמש כמקור האמת היחיד של Lakehouse ב-Google Cloud. הוא מאפשר למספר מנועים, כמו Apache Spark, Apache Flink ו-BigQuery, לגלות ולשאול את אותן טבלאות בו-זמנית.
סוגי קטלוגים
קטלוג זמן הריצה של Lakehouse מציע סוגים שונים של קטלוגים לניהול המטא-נתונים.
נקודת הקצה של קטלוג REST של Apache Iceberg
זהו קטלוג שמבוסס על נקודת הקצה של קטלוג REST של Apache Iceberg. הוא מספק יכולת פעולה הדדית בין מנועי קוד פתוח לבין BigQuery, ותומך בתכונות כמו מכירת אישורים ותוכנית התאוששות מאסון (DR).
קטלוג מותאם אישית של Apache Iceberg ל-BigQuery
זהו שילוב שמשתמש בקטלוג BigQuery ישירות כשירות המטא-נתונים הבסיסי לטבלאות מנוהלות של Apache Iceberg.
נקודת הקצה של קטלוג Apache Hive
נקודת הקצה הזו מספקת תאימות לעומסי עבודה (workloads) בקוד פתוח שתלויים בממשק של Apache Hive metastore (HMS), ומאפשרת להריץ עומסי עבודה של Apache Hive או של Spark מול שירות metastore מנוהל ב-Google Cloud.
סוגי טבלאות
ה-Lakehouse של Google Cloud תומך בכמה פורמטים של טבלאות, בהתאם למנוע שמשמש לניהול הנתונים ולנקודת הקצה של הקטלוג שבה אתם משתמשים.
טבלאות Apache Iceberg
אלה טבלאות Apache Iceberg שאתם יוצרים ממנועי קוד פתוח ומאחסנים ב-Cloud Storage. הקטלוג של Lakehouse בזמן ריצה מנהל את הטבלאות האלה דרך נקודת הקצה של קטלוג REST של Apache Iceberg. למנועי קוד פתוח יש גישת קריאה וכתיבה לטבלאות האלה, ול-BigQuery יש גישת קריאה בלבד. האפשרות הזו מתאימה לכם אם אתם רוצים שמנועי קוד פתוח ינהלו את תהליך העבודה של ETL.
טבלאות ב-BigQuery
הטבלאות האלה מנוהלות באמצעות BigQuery.
טבלאות Apache Iceberg
אלו הן טבלאות Apache Iceberg שיוצרים מ-BigQuery ומאחסנים ב-Cloud Storage. BigQuery מטפל בכל פריסת הנתונים והאופטימיזציה שלהם. אפשר לקרוא את הטבלאות האלה בכמה מנועים, אבל רק מנוע BigQuery יכול לכתוב בהן ישירות.
טבלאות מקוריות
הטבלאות האלה מנוהלות על ידי BigQuery והנתונים מאוחסנים ב-BigQuery Storage. אפשר לקשר את הטבלאות האלה לקטלוג של זמן הריצה של Lakehouse.
טבלאות חיצוניות
טבלאות חיצוניות נמצאות מחוץ לקטלוג של זמן הריצה של Lakehouse. הנתונים והמטא-נתונים מנוהלים באופן עצמאי בקטלוג של צד שלישי (כמו Cloud Storage, S3 או Azure Blob Storage). מערכת BigQuery יכולה רק לקרוא את הטבלאות האלה.
תכונות הטבלה
התפתחות הטבלה
Lakehouse של Google Cloud תומך באבולוציה של טבלאות Apache Iceberg, שמאפשרת לשנות את הסכימה או את מפרט החלוקה של טבלה לאורך זמן בלי לשכתב את נתוני הטבלה או ליצור מחדש את הטבלה.
מסע בזמן
התכונה 'מסע בזמן' מאפשרת לשלוח שאילתה לנתונים של טבלה כפי שהם היו בנקודת זמן ספציפית או במזהה של תמונת מצב. האפשרות הזו שימושית לביקורת, לשחזור ניסויים או לשחזור נתונים אחרי מחיקה בטעות.
שמירת מטא-נתונים במטמון
שמירת מטא-נתונים במטמון היא תכונה שמאיצה את ביצועי השאילתות בטבלאות חיצוניות. הוא שומר עותק של המטא-נתונים של הטבלה באחסון של BigQuery, וכך מצטמצם הצורך לקרוא קבצי מטא-נתונים מ-Cloud Storage במהלך ביצוע השאילתה.
ניהול טבלאות ב-Lakehouse של Google Cloud
ניהול טבלאות Lakehouse של Google Cloud מפשט את תחזוקת Lakehouse על ידי אוטומציה של משימות כגון דחיסה ואיסוף אשפה עבור טבלאות מנוהלות. כך אפשר לשפר את ביצועי השאילתות ואת יעילות האחסון.
מושגים שקשורים ליכולת פעולה הדדית
פדרציה של קטלוגים ב-BigQuery
באמצעות פדרציה של קטלוגים ב-BigQuery, אפשר להשתמש בנקודת הקצה של קטלוג Apache Iceberg REST של זמן הריצה של Lakehouse כדי לחשוף טבלאות שמנוהלות על ידי BigQuery, למשל טבלאות שמנוהלות על ידי Iceberg, למנועי קוד פתוח (OSS) חיצוניים כמו Apache Spark ו-Trino.
במקום ליצור מאגר ייעודי של קטלוג Lakehouse לאחסון מטא-נתונים, נקודת הקצה של קטלוג REST של Apache Iceberg פועלת אך ורק כשער פרוקסי, ומנתבת בקשות לקטלוג ישירות לקטלוג הפנימי של BigQuery. כך תוכלו ליצור טבלאות ולנהל אותן ישירות ב-BigQuery באמצעות DDL או ממשקי API סטנדרטיים של BigQuery, וגם לתת למנועי OSS חיצוניים גישת קריאה בלבד כדי להריץ שאילתות על הטבלאות האלה דרך נקודת הקצה של קטלוג REST.
Cross-cloud Lakehouse
Cross-cloud Lakehouse הוא הרחבה של Lakehouse ב-Google Cloud, שמאפשרת להתחבר לקטלוגים חיצוניים מרוחקים (לדוגמה, Databricks Unity Catalog או AWS Glue). הוא מסנכרן מטא-נתונים מספקי ענן אחרים, ומאפשר לכם לשלוח שאילתות לנתונים באמצעות BigQuery או מנועי קוד פתוח חיצוניים דרך נקודת הקצה של קטלוג Apache Iceberg REST, בלי להעביר את הנתונים.
מערכי נתונים ציבוריים
ב-Lakehouse של Google Cloud מתארחים מערכי נתונים ציבוריים באיכות גבוהה, שמוגשים דרך קטלוג Apache Iceberg REST, ומספקים גישה לקריאה בלבד לצורך ניתוח ובדיקה ללא ניהול תשתית.
מבנה השמות של P.C.N.T.
מבנה השמות P.C.N.T. הוא מוסכמה בת ארבעה חלקים שמשמשת לזיהוי ייחודי של טבלאות בקטלוג של זמן הריצה של Lakehouse ולשליחת שאילתות לגביהן מ-BigQuery. הוא מייצג את Project.Catalog.Namespace.Table:
- Project: מזהה הפרויקט ב- Google Cloud .
- Catalog: השם של קטלוג זמן הריצה של Lakehouse.
- מרחב שמות: הקיבוץ הלוגי של הטבלאות (בדומה למערך נתונים).
- Table: שם טבלת הנתונים.
מושגי אבטחה
חיבורים
חיבור הוא משאב ב-BigQuery שבו מאוחסנים פרטי הכניסה לגישה לנתונים חיצוניים. ב-Lakehouse של Google Cloud, חיבורים מעניקים גישה ל-Cloud Storage על ידי מתן גישה לחשבון השירות של החיבור לקטגוריית האחסון בשמכם.
הקצאת פרטי כניסה
הקצאת הרשאות היא מנגנון אבטחה שעוזר להגביר את בקרת הגישה כשמשתמשים בקטלוג של Lakehouse runtime. כשהשירות מופעל, הוא יוצר פרטי כניסה לטווח קצר עם היקף מצומצם, שנועדו להעניק גישה רק לנתיבי הקבצים הספציפיים שנדרשים לשאילתה.
ניהול מאוחד
ניהול מאוחד מאפשר לכם להגדיר ולאכוף מדיניות אבטחה וניהול נתונים באופן מרכזי באמצעות שילוב עם Knowledge Catalog. כשרושמים טבלאות בקטלוג של זמן הריצה של Lakehouse, המערכת רושמת באופן אוטומטי רשומות תואמות בקטלוג של המטא-נתונים העסקיים (Knowledge Catalog), וכך מאפשרת מעקב אחר מקורות נתונים, חיפוש סמנטי וניהול מרכזי במנועים שונים בלי להעביר או להעתיק קבצים.
מושגים במנוע השאילתות
ארכיטקטורת Lakehouse של Google Cloud מפרידה בין אחסון לבין מחשוב, ומאפשרת למנועי ניתוח שונים ליצור אינטראקציה עם טבלאות פתוחות.
Managed Service for Apache Spark
Managed Service for Apache Spark (לשעבר Managed Service for Apache Spark) מספק סביבת ריצה שמנוהלת במלואה לעיבוד פורמטים של טבלאות פתוחות כמו Apache Iceberg. הוא תומך בשני מצבי ביצוע עיקריים:
- אצוות ללא שרת: מיועדות לצינורות אוטומטיים של עיבוד נתונים ולעומסי עבודה של ETL שאינם אינטראקטיביים. מודל התשלום לפי ביצוע מבטל את הצורך בניהול אשכולות, מסיר את התחרות על משאבים בין משימות ומבצע אוטומציה של תחזוקת התשתית.
- סשנים אינטראקטיביים ללא שרת: מיועדים לניתוח נתונים לצורך גילוי תובנות, להנדסת נתונים ולניסויים במדעי הנתונים. הפעלת מחברות Apache Spark מתבצעת באמצעות Spark Connect או ליבות Spark מרוחקות, והן מספקות סביבה עם התאמה אוטומטית לעומס בלי צורך בהגדרת תשתית.
רמות שירות
כשמבצעים עומסי עבודה של Apache Spark מול קטלוג זמן הריצה של Lakehouse, אפשר לבחור בין רמות שירות שונות:
- מסלול רגיל: מסלול הביצוע שמוגדר כברירת מחדל ומתאים לעומסי עבודה רגילים של עיבוד אצווה.
- מסלול פרימיום: מספק יכולות מתקדמות, כולל תמיכה בסשנים אינטראקטיביים של נוטבוקים בלי שרת (serverless) ותכונות לשיפור הביצועים כמו Lightning Engine.
תבניות של סשנים
תבניות של סשנים מפשטות את ההגדרה של סשנים אינטראקטיביים ללא שרת. הם מאפשרים לאדמינים להגדיר ולשמור הגדרות סביבה נפוצות (כמו מאפייני קטלוג, הגדרות רשת וגרסאות זמן ריצה). כך אפשר לשמור על עקביות ולשפר את הפרודוקטיביות של המפתחים על ידי צמצום הצורך בהגדרות חוזרות. אפשר ליצור ולנהל תבניות של סשנים באמצעות מסוף Google Cloud , gcloud CLI, API בארכיטקטורת REST או Terraform.
מושגים שקשורים לאמינות
שכפול בין אזורים
רפליקציה בין אזורים יוצרת רפליקות של מטא-נתונים בכמה אזורים כדי להבטיח את הזמינות של הקטלוג במהלך הפסקות חשמל אזוריות.
מעבר לגיבוי (Failover)
מעבר לגיבוי (Failover) הוא תהליך של מעבר בין אזורים ראשיים ומשניים במהלך הפסקת חשמל אזורית, כדי לשמור על פעולות הקטלוג.