מחיקה או הסרה של טבלה מסירה רק את הרישום והמטא-נתונים של הטבלה מהקטלוג הייעודי לזמן ריצה של Lakehouse. קובצי הנתונים הבסיסיים שמאוחסנים ב-Cloud Storage לא נמחקים.
אפשר למחוק טבלה באמצעות מסוף Google Cloud , פקודות SQL drop ב-Spark וב-Trino או ה-API בארכיטקטורת REST.
לפני שמתחילים
-
מפעילים את BigLake API, אם הוא עדיין לא מופעל.
התפקידים שנדרשים כדי להפעיל ממשקי API
כדי להפעיל ממשקי API, צריך את ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד "בעלים" (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד "אדמין בממשק 'שימוש בשירות'" (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים - מגדירים את הקטלוג הייעודי לזמן ריצה של Lakehouse עם נקודת הקצה (endpoint) של קטלוג REST של Apache Iceberg.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות למחיקת טבלה, בקשו מהאדמין להקצות לכם את התפקידים הבאים ב-IAM בפרויקט:
-
מחיקת טבלה: אדמין ב-BigLake (
roles/biglake.admin) – הפרויקט שלכם
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
יכולות ותמיכה בטבלאות
כשמשתמשים בטבלאות בקטלוג הייעודי לזמן ריצה של Lakehouse, כדאי להבין את סוגי הטבלאות השונים ואת יכולות ההצטרפות שלהן. סקירה כללית על טבלאות Apache Iceberg
טבלאות Iceberg נתמכות
יש תמיכה רק בטבלאות Apache Iceberg בגרסה 2 (GA) ובגרסה 3 (גרסת טרום-השקה (Preview)). אין תמיכה בטבלאות Iceberg V1. כדי לשדרג טבלאות קיימות בגרסה 1, קראו את המאמר שדרוג טבלאות Iceberg מגרסה 1 לגרסה 2.
שימוש באפשרויות של הטבלה (גרסת טרום-השקה (Preview))
כדי להשתמש ביכולות המנוהלות של BigQuery, כמו שפת הטיפול בנתונים (DML) ב-BigQuery וניהול אוטומטי של טבלאות, אתם יכולים להגדיר מאפייני טבלה ספציפיים. התכונות האלה מופעלות בדרכים שונות, בהתאם למקום שבו הטבלה נוצרה:
- מ-BigQuery: כברירת מחדל, מופעלים BigQuery DML וניהול אוטומטי של טבלאות.
- ממנועי קוד פתוח: כדי להצטרף, צריך להגדיר במפורש את מאפייני הטבלה. מידע נוסף מופיע בקטע הגדרת אפשרויות הטבלה.
כשמוחקים רישום של טבלה מהקטלוג, הטבלה נמחקת גם אם היא טבלת Iceberg רגילה וגם אם היא טבלה עם יכולות מנוהלות של BigQuery. במאמר הגדרת אפשרויות הטבלה מוסבר איך מחיקת טבלה משפיעה על משימות ניהול הטבלה ברקע.
מחיקת טבלה
למחוק טבלה.
המסוף
במסוף Google Cloud , נכנסים לדף Lakehouse.
בוחרים קטלוג קיים או יוצרים קטלוג חדש אם אין לכם אחד.
בטבלה Namespace details, בוחרים טבלה ומרחיבים את אפשרויות התפריט.
לוחצים על Delete.
מאשרים את המחיקה על ידי הזנת שם הטבלה בתיבת הדו-שיח.
לוחצים על Delete.
Spark
spark.sql("DROP TABLE TABLE_NAME;")
DROP TABLE TABLE_NAME;
gcloud
כדי למחוק טבלה באמצעות gcloud, מריצים את הפקודה gcloud biglake iceberg tables delete.
gcloud biglake iceberg tables delete 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, משתמשים בהצהרת GoogleSQL הבאה (DROP TABLE):
DROP TABLE `PROJECT_ID.CATALOG_ID.NAMESPACE.TABLE_NAME`;
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
CATALOG_ID: מזהה הקטלוג הייעודי לזמן ריצה ב-Lakehouse. -
NAMESPACE: השם של מרחב השמות של Iceberg. -
TABLE_NAME: השם של טבלת Iceberg.
REST
כדי למחוק רישום של טבלת Iceberg באמצעות ה-API בארכיטקטורת REST, שולחים בקשת DELETE לנקודת הקצה DeleteIcebergTable:
DELETE /iceberg/v1/restcatalog/v1/projects/PROJECT_ID/catalogs/CATALOG_ID/namespaces/NAMESPACE_NAME/tables/TABLE_NAME
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Google Cloud . -
CATALOG_ID: מזהה הקטלוג. -
NAMESPACE_NAME: השם של מרחב השמות של הקטלוג. -
TABLE_NAME: השם של טבלת Iceberg.
המאמרים הבאים
- מידע נוסף זמין במאמר הגדרת נקודת הקצה של קטלוג REST של Apache Iceberg.