קבלת פרטי הטבלה

כשמציגים את פרטי הטבלה, אפשר לראות את הסכימה הבסיסית, את מאפייני הטבלה ואת המטא-נתונים של ההגדרה של טבלת Apache Iceberg בקטלוג של Lakehouse runtime.

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

אפשר לבדוק את פרטי הטבלה באמצעות מסוף Google Cloud , פקודות SQL DESCRIBE ב-Spark וב-Trino, או ה-API בארכיטקטורת REST.

לפני שמתחילים

  1. מוודאים שהחיוב מופעל בפרויקט Google Cloud .

  2. מפעילים את BigLake API, אם הוא עדיין לא מופעל.

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

    להפעלת ה-API

  3. מגדירים את קטלוג זמן הריצה של Lakehouse עם נקודת הקצה (endpoint) של קטלוג REST של Apache Iceberg.

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות להצגת פרטי הטבלה, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:

  • הצגת פרטי הטבלה: BigLake Viewer (roles/biglake.viewer) – הפרויקט שלכם

להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

יכולות ותמיכה בטבלאות

כשמשתמשים בטבלאות בקטלוג של Lakehouse runtime, כדאי להבין את הסוגים השונים של הטבלאות ואת היכולות שלהן. מידע נוסף על שימוש בטבלאות Apache Iceberg

טבלאות Iceberg נתמכות

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

קבלת פרטים על הטבלה

בודקים את הסכימה ואת המאפיינים של הטבלה.

המסוף

  1. במסוף Google Cloud , עוברים אל Lakehouse.

    מעבר אל Lakehouse

  2. בוחרים קטלוג קיים או יוצרים קטלוג חדש אם אין לכם קטלוג.

  3. בטבלה Namespace details (פרטי מרחב שמות), לוחצים על שם הטבלה שרוצים לבדוק.

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

Spark

spark.sql("DESCRIBE EXTENDED NAMESPACE_NAME.TABLE_NAME").show()

כדי להפעיל פעולה הדדית של קריאה/כתיבה וניהול טבלאות (גרסת Preview), מוסיפים את המאפיינים לסעיף TBLPROPERTIES:

TBLPROPERTIES (
  'gcp.biglake.bigquery-dml.enabled' = true,
  'gcp.biglake.table-management.enabled' = true
)

Trino

DESCRIBE SCHEMA_NAME.TABLE_NAME;

כדי להפעיל יכולת פעולה הדדית של קריאה/כתיבה וניהול טבלאות (גרסת Preview), מוסיפים את המאפיינים האלה לסעיף WITH:

WITH (
  "gcp.biglake.bigquery-dml.enabled" = 'true',
  "gcp.biglake.table-management.enabled" = 'true'
)

gcloud

כדי לתאר טבלה באמצעות gcloud, מריצים את הפקודה gcloud biglake iceberg tables describe.

gcloud biglake iceberg tables describe TABLE_NAME \
    --project="PROJECT_ID" \
    --catalog="CATALOG_ID" \
    --namespace="NAMESPACE_NAME"

מחליפים את מה שכתוב בשדות הבאים:

  • ‫TABLE_NAME: השם של טבלת Iceberg.
  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • ‫CATALOG_ID: המזהה של הקטלוג.
  • ‫NAMESPACE_NAME: השם של מרחב השמות של הקטלוג.

BigQuery

כדי לראות את פרטי הטבלה ואת מאפייני המטא-נתונים של טבלת Apache Iceberg בקטלוג של זמן הריצה של Lakehouse מ-BigQuery, אפשר לבדוק את פרטי הטבלה במסוף BigQuery או להשתמש בפקודה bq show.

REST

כדי לאחזר מטא-נתונים של טבלה באמצעות API בארכיטקטורת REST, שולחים בקשת GET לנקודת הקצה GetIcebergTable:

GET /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/tables/TABLE_NAME

כדי לטעון פרטי כניסה לטבלה לטווח קצר במצב של מתן פרטי כניסה, צריך לשלוח בקשת GET לנקודת הקצה LoadIcebergTableCredentials:

GET /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/tables/TABLE_NAME/credentials

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • ‫CATALOG_ID: המזהה של קטלוג זמן הריצה של Lakehouse.
  • ‫NAMESPACE_NAME: השם של מרחב השמות של הקטלוג.
  • ‫TABLE_NAME: השם של טבלת Iceberg.

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