השוואה בין סוגים של טבלאות

בחירה בארכיטקטורת הטבלה הנכונה היא קריטית לשיפור הביצועים, לצמצום העלויות ולהבטחת גישה לנתונים בכלים לניתוח נתונים. בדף הזה מוסבר על סוגי הטבלאות השונים ועל נקודות הקצה להצגת נתונים שזמינות ב-Lakehouse for Apache Iceberg. כך תוכלו לבחור את האפשרות הכי טובה בהתאם למנועי הכתיבה, לדרישות הקריאה ולצרכים שלכם בניהול בקרת הגישה.

פורמטים של טבלאות לפי קטלוג או מנוע

בוחרים קטלוג או מנוע כדי לקבל מידע על פורמטים נתמכים של טבלאות, על הגדרת מאגר מטא-נתונים, על יכולות אופטימיזציה של אחסון ועל יכולת פעולה הדדית של מנועים.

קטלוג של סביבת זמן ריצה של Lakehouse

הקטלוג של Lakehouse runtime מנהל טבלאות של Apache Iceberg דרך נקודת הקצה של קטלוג REST של Iceberg, ומספק יכולת פעולה הדדית חלקה של קריאה וכתיבה בין מנועים שתואמים ל-Iceberg (Spark,‏ Flink,‏ Trino) לבין BigQuery, תוך הסתמכות על ממשק קטלוג REST של Iceberg שהוא תקן בתעשייה.

פורמטים נתמכים של טבלאות

יש תמיכה בטבלאות Apache Iceberg V2 (זמינות כללית) ובטבלאות V3 (גרסת Preview). אין תמיכה בטבלאות Iceberg V1. לפני שמשתמשים בטבלאות קיימות בגרסה 1 עם Lakehouse for Apache Iceberg, צריך לשדרג אותן לגרסה נתמכת. מידע נוסף זמין במאמר בנושא שדרוג טבלאות Iceberg V1 ל-V2.

התכונות העיקריות:

  • Metastore: קטלוג זמן הריצה של Lakehouse.
  • אחסון: Cloud Storage.
  • אופטימיזציה של האחסון: מנוהלת על ידכם, או על ידי Google (גרסת Preview).
  • גישת קריאה וכתיבה:
    • מנועי קוד פתוח: קריאה וכתיבה (זמינות כללית)
    • ‫BigQuery: קריאה/כתיבה (גרסת Preview)
  • תרחישי שימוש: אגם נתונים פתוח עם אחסון ברמה ארגונית וביצועים גבוהים לניתוח מתקדם, לסטרימינג ול-AI.

‫Hive metastore

קטלוג זמן הריצה של Lakehouse מנהל טבלאות Apache Hive באמצעות נקודת קצה של Apache Hive metastore ‏ (HMS) שעברה אופטימיזציה לתאימות ל-Apache Spark ExternalCatalog, ומאפשר לכם לשתף נתונים בצורה חלקה בין Apache Spark,‏ Apache Hive ו-BigQuery. אתם יוצרים את הטבלאות האלה ממנועי קוד פתוח ומאחסנים אותן ב-Cloud Storage. האפשרות הזו מתאימה במיוחד אם רוצים שמנועי קוד פתוח ינהלו את תהליך ה-ETL, בלי צורך במאגר מטא-נתונים נפרד של Hive שמתארח באופן עצמאי, ונדרשת רק גישת קריאה מ-BigQuery.

טבלאות שמנוהלות על ידי נקודת הקצה של Hive metastore הן טבלאות רגילות של Apache Hive ו-Spark (באמצעות Hive SerDes או מקורות נתונים של Spark), ולא טבלאות של Apache Iceberg. כדי ליצור ולנהל טבלאות Apache Iceberg בקטלוג של Lakehouse בזמן ריצה, צריך להשתמש בנקודת הקצה של קטלוג REST של Iceberg.

התכונות העיקריות:

  • Metastore: קטלוג זמן הריצה של Lakehouse (דרך IMetastoreClient מותאם אישית).
  • אחסון: Cloud Storage (תמיכה בפורמטים כמו Parquet,‏ ORC ו-Avro).
  • אופטימיזציה של האחסון: מנוהלת על ידכם או על ידי צד שלישי.
  • גישת קריאה וכתיבה:
    • מנועים של קוד פתוח (Spark ו-Hive): קריאה וכתיבה.
    • ‫BigQuery: קריאה בלבד.
  • תרחישים לדוגמה: העברת עומסי עבודה (workloads) קיימים של Spark ו-Hive למאגר מטא-נתונים מנוהל ללא שרת (serverless) ב- Google Cloud.

BigQuery

‫BigQuery תומך בטבלאות מנוהלות של Apache Iceberg, בטבלאות מקוריות ובטבלאות חיצוניות.

  • טבלאות מנוהלות של Apache Iceberg: אלה טבלאות Apache Iceberg שאתם יוצרים ומנהלים מ-BigQuery ומאחסנים ב-Cloud Storage. אפשר לקרוא אותם באמצעות מנועי קוד פתוח, אבל BigQuery הוא המנוע שמנהל את המטא-נתונים וכותב אותם. האפשרות הזו מתאימה למי שרוצה ש-BigQuery ינהל את תהליך העבודה באופן מלא.

  • טבלאות מקוריות: אלה טבלאות מקוריות של BigQuery. הן מנוהלות באופן מלא ומציעות את התכונות המתקדמות ביותר לניתוח ולניהול. האפשרות הזו מתאימה לעומסי עבודה שאינם Iceberg.

  • טבלאות חיצוניות: אלה מבנים ספציפיים ל-BigQuery של נתונים שמאוחסנים ב-Cloud Storage, ב-Amazon S3 או ב-Azure Blob Storage. הנתונים והמטא-נתונים מנוהלים באופן עצמאי, ול-BigQuery יש גישת קריאה בלבד. בוחרים באפשרות הזו אם רוצים לנהל נתונים ישירות בקטלוג או באחסון של צד שלישי.

פורמטים של טבלאות לפי מוצר

בעזרת התרשים הבא אפשר להשוות בין סוגי הטבלאות בקטלוג של Lakehouse runtime וב-BigQuery.

lakehouse

Apache Iceberg (GA) Borderless Lakehouse (תצוגה מקדימה) Apache Hive (תצוגה מקדימה)
Metastore קטלוג של סביבת זמן ריצה של Lakehouse קטלוג של סביבת זמן ריצה של Lakehouse קטלוג של סביבת זמן ריצה של Lakehouse
אחסון Cloud Storage Cloud Storage / Amazon S3 Cloud Storage
אופטימיזציה של האחסון לקוח, מנוהל על ידי צד שלישי או מנוהל על ידי Google (גרסת Preview) מנוהל על ידי לקוח או צד שלישי מנוהל על ידי לקוח או צד שלישי
קריאה/כתיבה מנועי קוד פתוח (קריאה/כתיבה)

BigQuery (קריאה/כתיבה [גרסת Preview])
מנועי קוד פתוח (קריאה)

BigQuery (קריאה)
מנועי קוד פתוח (קריאה/כתיבה)

BigQuery (קריאה בלבד)
פעולות מתקדמות ללא ללא ללא
בקרת גישה אבטחה ברמת הטבלה באמצעות IAM אבטחה ברמת הטבלה באמצעות IAM אבטחה ברמת הטבלה באמצעות IAM
תרחישים לדוגמה Open lakehouse אפשר לשלוח שאילתות לנתונים בספקי ענן אחרים בלי להעביר קבצים או ליצור צינורות ETL מורכבים. העברת עומסי עבודה (workloads) קיימים של Spark ו-Hive אל metastore מנוהל ללא שרת (serverless)

BigQuery

טבלאות מנוהלות של Apache Iceberg טבלאות חיצוניות של Apache Iceberg טבלאות רגילות
Metastore BigQuery מאגר מטא נתונים חיצוני או באירוח עצמי BigQuery
אחסון Cloud Storage Cloud Storage / Amazon S3 / Azure BigQuery
אופטימיזציה של האחסון בניהול Google מנוהל על ידי לקוח או צד שלישי בניהול Google
קריאה/כתיבה מנועי קוד פתוח (קריאה בלבד עם ספריות Iceberg, יכולת פעולה הדדית של קריאה/כתיבה עם BigQuery Storage API)

BigQuery (קריאה/כתיבה)

מנועי קוד פתוח (קריאה/כתיבה)

BigQuery (קריאה בלבד)
מנועי קוד פתוח (יכולת פעולה הדדית של קריאה/כתיבה עם BigQuery Storage API)

BigQuery (קריאה/כתיבה)

פעולות מתקדמות סטרימינג בתפוקה גבוהה באמצעות BigQuery Storage Write API‏ (gRPC),‏ Change Data Capture‏ (CDC) ועסקאות מרובות הצהרות ללא סטרימינג בתפוקה גבוהה באמצעות BigQuery Storage Write API‏ (gRPC),‏ Change Data Capture‏ (CDC) ועסקאות מרובות הצהרות
בקרת גישה אבטחה ברמת הטבלה באמצעות IAM, אבטחה ברמת העמודה ואנונימיזציה של נתונים אבטחה ברמת הטבלה באמצעות IAM, אבטחה ברמת העמודה, אבטחה ברמת השורה ואנונימיזציה של נתונים אבטחה ברמת הטבלה באמצעות IAM, אבטחה ברמת העמודה, אבטחה ברמת השורה ואנונימיזציה של נתונים
תרחישים לדוגמה ‫Lakehouse פתוח עם אחסון ברמה ארגונית וביצועים גבוהים לניתוח נתונים מתקדם, סטרימינג ו-AI טבלאות זמניות לטעינות ב-BigQuery, טבלאות מדור קודם שניתן להריץ עליהן שאילתות בלבד אחסון ברמה ארגונית לניתוח נתונים מתקדם, לסטרימינג ול-AI

המאמרים הבאים